컴퓨터 공부/Database

[Oracle] P-File(Parameter File)과 SP-File(Server Parameter File) 속성

나정_ 2013. 5. 23. 13:11

P-File(Parameter File)파일을 열어보자 !! 


오라클 서버를 운영하기 위해, instance를 메모리에 할당해야하는데 이를 위하여 초기화 파라미터가 필요하다 

이러한 대표적인 초기화 파라미터로 pfile과 spfile이 있다. 

오늘은 pfile에 대하여 알아보도록 하겠다. 


1. P-FILE(Parameter File)


- p-file은 textfile형태로 database 초기화 파라미터들을 저장한다.

- 일반적으로 $ORACLE_HOME/dbs/init.ora로 저장된다. 

- 인스턴스가 기동될깨 pfile을 읽어서 데이터베이스에 적용한다. 

- 인스턴스 기동중에 alter system이나 alter session을 통해 파라미터를 변경할 수 있으나

  인스턴스를 재기동할 때는 pfile에 저장된 값으로 다시 적용해야한다. 

- 완전히 변경하고 싶을 경우에 pfile을 수정해야함 

- 11g에서 데이터베이스 생성시 pfile이 아닌 spfile을 사용하므로 pfile을 사용하고 싶다면 startup시 pfile="pfile경로"를 입력해주어야 spfile이 아닌 pfile로 초기화 파라미터를 저장한다. 

ex) startup nomount pfile="pfile경로"



2. P-FILE 속성 


필자는 오라클 데이터베이스를 DBCA(데이터베이스 설치를 도와주는 툴)를 통해 생성한 것이 아니라 명령어를 통하여수동으로 생성하였으며, ORACLE설치경로\product\11.2.0\dbhome_1\database 밑에 PFILE을 생성하였다. 


P-FILE 속성은 아래와 같다. (필자가 생각하는 대표적인 것만 설명하도록 하겠다)  


1. Security and Auditing 


● audit_file_dest=D:\app\HWAJUNG\admin\group\adump

● audit_trail=db


의심스러운 데이터베이스 작업을 선택하여 관찰하고 데이터베이스 액션을 모니터하여 작업을 기록하는 작업을 audit(감사)라 말한다.


audit을 실행하기 위해서는 위와 같은 설정이 필요하다 


 audit_trail = NONE 혹은 FALSE

 감사기능을 사용하지 않음

 audit_trail = DB 혹은 TRUE

 감사기능을 사용하고 audit_trail을 데이터 내부테이블인 sys.aud$에 기록함

 audit_trail = OS

 감사기능을 사용하고 audit_trail을 운영체제 file에 기록한다 이때 경로명을 audit_file_dest에 의해 지정함



● remote_login_passwordfile=EXCLUSIVE


oracle에서 startupshutdown시킬 수 있는 권한을 가진 사용자들을 인증할 때 사용하는 방식설정으로 인증방식은 2가지 종류가 있다


 emote에서 database에 로그인하는 경우

 password file인증방식

 ocal에서 database에 로그인하는 경우

 1)운영체제 방식

2) password file 인증방식


아래의 옵션 설정으로 운영체제 방식과 password file 인증방식을 사용할 수 있다.



 emote_login_passwordfile = none

 OS 인증사용

 remote_login_passwordfile = exclusive

 하나의 database에 하나의 instance 사용 시

 remote_login_passwordfile = shared

 하나의 database를 여러 개의 instance 사용 시

 


2. Dedicated/Shared Server


● dispatchers="(PROTOCOL=TCP) (SERVICE=imsdbXDB)“ (dispatchers=10)


dispatcher 프로세스의 설정

 

shared_server : 실행될 shared server의 최소 개수

max_shared_servers : 실행될 수 있는 shared server의 최대 개수

shared_server_session: 동시에 연결될 수 있는 shared server의 총 유저 세션 수

max_dispatchers: 동시에 실행될 수 있는 dispatcher 프로세스 최대 수

 

 

dispatcher 프로세스 : shared server 환경에서 유저프로세스들이 제한된 숫자의 서버프로세스를 공유하는 것을 도와주는 프로세스 


3. Miscellaneous

 

● compatible=11.2.0.0.0

11.2버전의 ASM(Automatic Storage Management)구조까지 지원할 수 있음을 의미

 

● diagnostic_dest=D:\app\HWAJUNG

 

ADR(Automatic Diagnostic Repository)은 자동진단 저장소 개념을 적용하여 여러 에러 및 로그에 대한 관련된 정보를 자동으로 관리해준다. ADR 저장되는 위치는 diagnostic_dest에서 확인할 수 있다

 

● memory_target=1287651328

 


memory_target : memory_target은 오라클 시스템 전역 가용 메모리를 정의한다. 데이터베이스는 SGAPGA를 늘렸다 줄였다 하면서 memory_target에 맞게 메모리를 조절한다. 만약 memory_max_target을 설정하지 않고 memory_target을 설정했다면 데이터베이스는 자동으로 memory_max_target값을 memory_target값으로 설정한다


4. Database Identification


db_domain="“

도메인 이름 설정

db_name=group

데이터베이스 이름 설정


5. System Managed Undo and Rollback Segments

 

● undo_tablespace=UNDOTBS1

undo tablespace란 사용자가 DML을 수행했을 경우 원본 데이터들을 저장해두는 TablespaceUNDOTBS1이라는 테이블스페이스에 매핑  


6. Cashe and I/O


● db_block_size=8192

오라클 데이터베이스에서 데이터를 저장하는 최소 단위


7. Cursors and Library Cashe

 

 open_cursors=300

open_cursors파라미터는 한 session이 한번에 open할 수 있는 cursor의 최대 개수이다. 이 값이 1 증가할 때마다 약 25bytefixed UGA를 사용하므로 이 값이 너무 크면 oracle memory성능을 저해시키는 요인이 될 수 있다.

 

8. File Configuration


● control_files=("D:\app\HWAJUNG\oradata\orcl\control01.ctl","D:\app\HWAJUNG\flash_recovery_area\orcl\control02.ctl")

control file 위치 설정

● db_recovery_file_dest=D:\app\HWAJUNG\flash_recovery_area

● db_recovery_file_dest_size=4039114752

RMAN을 사용하여 생성되어지는 백업파일들을 DB_RECOVERY_FILE_DEST 파라미터에서 지정한 위치에 저장되며 file size11g에선 기본 4G이다.

 

9. Process and Sessions


 processes=150

OracleBackground Process들과 각 Session에 대한 서버 프로세스가 기동된다. Processes 파라미터는 Oracle과 관련되어 기동할 수 있는 모든 Process의 최대 한계치를 정한다.