[Oracle] oracle 필수 파일 - Parameter File

 

 

데이터베이스를 기동하고 데이터베이스에서 생성되는 로그를 기록하기 위해서는 오라클은 파일을 사용합니다.
이런 파일은 반드시 존재해야하는 파일입니다.
데이터베이스 장애 및 성능 문제 발생 등에 분석 자료로도 사용이 되기도 하므로 매우 중요한 요소입니다.
오라클에서 사용하는 파일의 종류와 각 특징에 대해서 정리합니다.

 

ㅇ 오라클 필수 파일 종류
파라미터 파일
컨트롤 파일
추적 파일
패스워드 파일

 

ㅇ 파라미터 파일의 개념과 종류를 확인합니다.
DB기동시에 파라미터 파일을 참조하여 SGA 및 기타 환경을 구성하게 됩니다.
파라미터 파일에 명시된 내용들이 DB에 적용이 되어서 SGA의 크기가 결정되고 시스템 용량을 고려하여 나머지 부분에
대한 설정도 구성이 됩니다.
오라클은 수많은 파라미터값을 설정할 수 있습니다.
DB관리자는 DB가 운영되는 특성 및 환경에 따라 각 각의 파라미터값을 설정해야 합니다.
결론은 파라미터 파일(Parameter File)의 정의는 아래와 같이 할수 있습니다.
오라클 환경을 구성하는 파라미터값에 대한 설정 값 저장하는 파일이며 파라미터 파일에 따로 설정하지 않은 값은 기본 값으로 설정이 됩니다.
파라미터파일의 기본 저장위치는 $ORACLE_HOME/dbs 입니다.

라미터파일은 정적 파라미터 파일과 동적 파라미터 파일로 존재합니다.
정적 파라미터 파일 : 텍스트형식, 사용자 관리, 텍스트 편집기로 수정, V$PPARAMETER 뷰, initSID.ora 파일, 동적파라미터종류 적습니다.
동적 파라미터 파일 : 바이너리형식, 오라클 관리, 일반 편집기 수정 불가 (정적파라미터파일로 변경 후 수정하거나 SQL
명령어로 수정가능합니다), V$SPPARAMETER 뷰, spfileSID.ora 파일, 동적파라미터종류 많습니다.
동적파라미터는 DB의 재기동 없이 ALTER SYSTEM SET 명령어로 파라미터값을 적용할수 있습니다.
단, 위 명령어로 변경한 후 해당 파라미터파일에서 대상 값을 변경해야만 다음 DB 재기동시 적용이 됩니다.

 

ㅇ파라미터파일 관리
정적 파라미터파일 생성하는 방법입니다.
$ORACLE_HOME/dbs/init.ora 파일을 참고하여 텍스트 편집기로 생성하여 저장하는 방법입니다.
SQL> CREATE PFILE = 'pfile_name' FROM SPFILE = 'spfile_name';
동적 파라미터 파일을 생성하는 방법입니다.
SQL> CREATE SPFILE = 'spfile_name' FROM PFILE = 'pfile_name';

파라미터파일에 설정할 수 있는 파라미터는 동적파라미터와 정적파라미터가 있습니다.

파라미터파일의 파라미터 값 변경하는 방법입니다.
DB open 상태에서 파라미터값을 변경하는 방법은 동적 파라미터값만을 변경할 수 있다.
(오라클버전이 높아질수록 더 많은 파라미터를 동적파라미터로 제공하여서 재기동하지않고도 변경이 가능해집니다.)
예제)
SQL> ALTER SYSTEM SET db_cache_size = 120M SCOPE = BOTH;
데이터버퍼캐시크기 120M 증설, SCOPE 는 MEMORY | SPFILE | BOTH 중 1가지를 지정해줘야 합니다.
MEMORY 옵션은 파라미터 설정 값 변경을 메모리에만 적용한다는 의미입니다. 이 경우 변경된 파라미터에 대해 파라미터파일을 수정하지 않았다면 DB 재시작시 변경된 설정값이 적용되지 않고 이전 설정 값이 적용이 됩니다.
SPFILE옵션은 변경된 설정값을 동적파라미터파일에만 적용합니다. 이와같은 옵션은 즉시 적용되지 않고 DB를 재시작 할 때 적용됩니다.
BOTH옵션은 변경한 설정값을 메모리와 동적파라미터파일 모두에 적용할 경우에 사용합니다.
메모리에도 적용이 바로 되기 때문에 재기동 필요없이 바로 적용이 가능합니다.

 

*spfile 위치 : $ORACLE_HOME/dbs

*pfile 위치: $ORACLE_BASE/admin/SID명/pfile

 

-spfile 삭제 후 원본 pfile 가져오기 (원본 pfile은 초기에 DB생성했던 초기값들로 작성되어있습니다.)

cd $ORACLE_HOME/dbs

ls // spfileSID명.ora

rm -rf spfileSID명.ora

삭제 후 오라클을 startup 시키면 에러가 나면서 오라클이 정상적으로 실행되지 않습니다.

이럴 경우 원본 pfile을 가져옵니다.

ls $ORACLE_BASE/admin/SID명/pfile  // init.ora.8485609485469 (원본 pfile, 숫자는 모든 서버마다 다릅니다.)

cd $ORACLE_HOME/dbs

cp $ORACLE_BASE/admin/SID명/pfile/init.ora.39898 initSID명.ora   // 원본파일 복사해옵니다. (파일제목은 기본형식에 맞춰서 가져와야합니다.)

ls //생성확인

오라클에서 startup 해봅니다.

(만약에 DB생성 후 parameter 값을 변경시엔 spfile을 pfile로 변환하여 따로 백업을 받는 방법이 있습니다.)

 

 

*현재 spfile을 사용하는지 pfile을 사용하는지 확인하는 명령어

sql> show parameter spfile;

sql> show parameter pfile;

VALUE값에 아무것도 없으면 pfile입니다.

 

- pfile, spfile 만들기

pfile만 있을 경우 이 파일을 사용하여 spfile을 생성하는 것과, spfile만 있을 때 이 파일을 사용하여 pfile을 생성하는 방법 확인합니다.

 

SQL> create spfile from pfile;  //pfile로부터 spfile을 생성시키는 명령어입니다.

그리고 pfile 삭제를 한다

다시 spfile에서 pfile을 생성합니다.

SQL> create pfile from spfile;

 

 

 

 

 

 

 

+ Recent posts