CONNECTION Connection 이란 User 프로세스와 Server 프로세스가 연결된 것이다. CONNECTION TYPE Dedicated Server 특정 User 프로세스가 시킨 일만 하는 서버이다. 동시 User가 100개이면 서버가 100개 떠야한다(user : server = 1 : 1). Server 프로세스 각각은 PGA가 할당된다. 장점 : User가 일을 많이, 쉴틈 없이 계속 시키는 경우에 좋은 성능을 나타낸다. 단점 : OLTP(짧은 트랜잭션/간단한 SQL이 반복되는 환경, 접속자는 많고 일은 적은 환경) 환경에서 자원이 낭비된다. User : Server = 1 : 1이라서 확장성이 안좋다. Shared Server 여러 User 프로세스에 대해 적은 수의 공유 serve..
Client-side Network Configuration 클라이언트 쪽에서 서버로 접속하는 방식은 4가지가 있다. Local Naming(로컬 이름 지정 방식) 4가지 정보 ①프로토콜, ②호스트명, ③포트번호, ④서비스명을 로컬에(tnsnames.ora) 저장해 놓는 방식이다. 방식 : $ sqlplus 유저명/유저패스워드@서비스명 ex)$ sqlplus scott/tiger@orcl 위치: $ORACLE_HOME/network/admin/tnsnames.ora 단점: 클라이언트의 구성파일(tnsnames.ora)의 관리가 필요하다(이름 분석 파일, 서버의 구성이 바뀌면 파일을 다 관리해줘야 함). 장점: 고급 연결 옵션을 지원한다(failover, load balancing). Easy Connec..
Listener 오라클 서버에 접속하기 위해서는 일단 오라클 서버의 리스너가 동작 해야한다. 리스너는 서버와 클라이언트 사이에 Connection을 만들어주는 역할을 한다. 리스너의 구성 파일은 $ORACLE_HOME/network/admin에 있는 listener.ora파일이다. 리스너가 가지고 있어야 하는 정보는 ①프로토콜, ②호스트, ③포트번호, ④서비스네임 이다. Listener.ora 오라클 서버에서 클라이언트의 요청을 듣고, 클라이언트와의 통신 환경을 설정하는 파일이다. 즉, 오라클 클라이언트에서 서버로 접속할 때 필요한 프로토콜 및 포트 정보 등을 설정하는 파일이다. 정적등록과 동적등록 오라클 서버에 리스너를 등록하는 두가지 방법이 있다. 하나는 정적등록이고 또 하나는 동적등록이다. 정적등록..
ASM의 개념 ASM은 Oracle 10g부터 지원되는 Logical Volume Manager와 File System의 통합체라고 할 수 있다. Oracle Database File을 위해 특별히 구현된 Disk 관리 시스템으로 Disk 간 Balance가 유지될 수 있도록 분산 저장 및 Mirroring을 지원한다. • Disk 실제 물리적인 디스크이며 일반적으로 디스크 업체에서 I/O 분산을 해서 제공한다. • Logical Volume Manager 디스크 업체에서 제공한 물리적인 디스크에 대해 Volume Group과 Logical Volume(Lvol)을 구성하는 부분이다. • File System Lvol을 File System으로 mount하여 해당 File System에 datafile을..
Oracle RAC 개념 Oracle RAC는 여러 개의 Instance가 하나의 Database를 엑세스 할 수 있다. 이는 application에서 접속할 수 있는 통로는 여러 개이며 Database는 하나인 형태이다. Oracle RAC = N개의 Instance + 1개의 Database 그리고 RAC로 연결된 N개의 Instance에서 동일한 Datafile을 공유하여 엑세스한다. 하지만 Database 작업에 사용할 수 있는 CPU나 메모리 등의 Resource는 서로 공유하지 않으며 해당 Node의 Resource만을 사용한다. Cluster 두 개 이상의 독립된 서버들과 Disk를 하나로 연결하는 기법이다. 사용자가 Cluster로 구성된 서버들 중 어느 서버에 접속해도 동일한 Disk를 ..
UNDO 관리 SQL> show parameter undo undo_management : AUTO UNDO SEGMENT의 개수와 사이즈를 오라클이 알아서 정하겠다. DBA가 할 일은 언두 전용 테이블스페이스(UNDO_TABLESPACE) 만들기만 하면 된다(사이즈 설정을 어떻게 할 것인지가 중요). undo_tablespace : UNDOTBS1 undo_tablespace 파라미터가 가리키는 값이 지정된 언두 테이블스페이스이다. 언두 테이블스페이스는 추가로 더 생성 가능하지만, 사용하는 테이블스페이스는 한개이다. *그럼 왜 추가로 더 만드는 거지? 크기, 성능이 더 좋은 새로운 (언두) 테이블스페이스로 옮기고(switch) 싶어서. → switch 할 때 사용중이던 테이블스페이스에서 하던 작업들은 ..
Redo log file 리두 로그 파일은 데이터베이스의 모든 변경사항을 기록하는 파일이다. 따라서 리두 로그 파일은 장애 발생 시 반드시 필요하기 때문에 복사본을 가지고 있다. 이 복사본을 멤버라고 하고, 이 멤버들의 집합을 리두 로그 그룹이라고 한다. Oracle에서는 최소 리두 로그 그룹 개수를 2개, 각 그룹 별 최소 멤버 개수를 1개로 정의하고 있지만 실제 운영 데이터베이스에서는 최소 리두 로그 그룹 개수 3개, 각 그룹 별 최소 멤버 개수 2개를 사용한다. Redo log file 다중화 OS 환경 : Oracle Linux 6.3 DB 환경 : Oracle Database 12.1.0.2 리두 로그 그룹 추가 - 총 그룹의 개수는 3개, 그룹당 Member 2개, 모든 member 크기는 3..
스키마와 유저 • 유저 DB 안에서 어떤 권한을 가진 객체이다. • 스키마 유저가 생성한(소유한) 모든 객체들의 집합이다. 권한 • 권한 - 시스템과 객체의 보안을 위해 존재한다. - 객체 권한이 아닌 것은 다 시스템 권한이라고 할 수 있다. • 시스템 권한 - 유저가 특정 데이터베이스에서 작업을 수행할 수 있는 권한이다. - DBA가 권한을 부여한다. - WITH ADMIN OPTION (이 옵션 가진 유저는 다른 디비 유저의 권한 취소가 가능하다. 연쇄 취소 X) - select_catalog_role(데이터딕셔너리 select 권한을 가진 role) - ANY 키워드 ex) grant select any table to demo; • 객체 권한 - 유저가 특정 객체에 대해 특정 작업을 수행할 수 있..