문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
dbms:oracle:admin:oracleparameterfile [2007/08/19 01:08] 222.238.62.148 새로 만듬 |
dbms:oracle:admin:oracleparameterfile [2011/07/31 23:14] (현재) starlits |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== Oracle Parameter File (init.ora, spfile.ora) ====== | ====== Oracle Parameter File (init.ora, spfile.ora) ====== | ||
- | ===== Initial Parameter File ? | + | ===== Initial Parameter File |
+ | === === | ||
^ ^ 서버 파라미터 파일 ^ 텍스트 파라미터 파일 ^ | ^ ^ 서버 파라미터 파일 ^ 텍스트 파라미터 파일 ^ | ||
| file | binary file | text file | | | file | binary file | text file | | ||
줄 8: | 줄 8: | ||
| 명명 | | 명명 | ||
| 기본이름 | spfile< | | 기본이름 | spfile< | ||
+ | |||
+ | ===== ===== | ||
- SPFILE을 생성하여 초기화 파라미터를 동적으로 유지관리할 것을 권장한다. | - SPFILE을 생성하여 초기화 파라미터를 동적으로 유지관리할 것을 권장한다. | ||
- | - 현재의 파라미터파일의 형식을 확인하는 방법이다. (값이 존재시 spfile로 시작된 | + | - 현재의 파라미터파일의 형식을 확인하는 방법이다. (값이 존재한다면 |
SQL> show parameter spfile | SQL> show parameter spfile | ||
</ | </ | ||
===== PFILE (Parameter FILE) ===== | ===== PFILE (Parameter FILE) ===== | ||
- | - 일반적으로 $ORACLE_HOME/ | + | - 일반적으로 $ORACLE_HOME/ |
- 인스턴스 기동중 ALTER SYSTEM 이나 ALTER SESSION으로 parameter를 변경할 수 있으나, 인스턴스를 재기동될 때는 pfile에 저장된 값으로 다시 적용된다. | - 인스턴스 기동중 ALTER SYSTEM 이나 ALTER SESSION으로 parameter를 변경할 수 있으나, 인스턴스를 재기동될 때는 pfile에 저장된 값으로 다시 적용된다. | ||
- 완전히 파라메터를 변경하고자 할 경우 pfile을 수정해야 한다. | - 완전히 파라메터를 변경하고자 할 경우 pfile을 수정해야 한다. | ||
줄 41: | 줄 43: | ||
SQL> alter system set processes = 512 scope = spfile | SQL> alter system set processes = 512 scope = spfile | ||
</ | </ | ||
+ | |||
+ | |||
+ | |||
==== 활용예제 ==== | ==== 활용예제 ==== | ||
줄 62: | 줄 67: | ||
- spfile을 사용하다가 그 내용을 pfile(initSID.ora)에 backup 차원에서 반영 | - spfile을 사용하다가 그 내용을 pfile(initSID.ora)에 backup 차원에서 반영 | ||
- spfile대신 initSID.ora를 사용하고자 하는 경우 | - spfile대신 initSID.ora를 사용하고자 하는 경우 | ||
- | - initSID.ora를 참조하여 spfileSID.ora를 생성 <code sql> | + | - initSID.ora를 참조하여 spfileSID.ora를 생성 |
SQL> connect / as sysdba | SQL> connect / as sysdba | ||
- | SQL> create pfile=' | + | SQL> create pfile=' |
- | SQL> create spfile=' | + | SQL> create spfile=' |
</ | </ | ||
- 위의 예처럼 화일명 대신 직접 directory까지 절대 path로 지정할 수 있고, \\ 화일명은 임의로 지정 후 나중에 사용시 initSID.ora나 spfileSID.ora 형태로 만들어줄 수 있다. | - 위의 예처럼 화일명 대신 직접 directory까지 절대 path로 지정할 수 있고, \\ 화일명은 임의로 지정 후 나중에 사용시 initSID.ora나 spfileSID.ora 형태로 만들어줄 수 있다. | ||
줄 93: | 줄 98: | ||
=== v$parameter와 v$spparameter에 대해서 (static parameter 확인) === | === v$parameter와 v$spparameter에 대해서 (static parameter 확인) === | ||
+ | |||
+ | - initial parameter의 종류에는 db가 운영중에는 바로 그 값을 변경하여 반영시킬 수 없고, \\ 다음 startup 후에만 변경된 값이 영향을 주게되는 parameter가 있다. \\ 이러한 parameter를 **static parameter**라고 부른다. | ||
+ | - static parameter의 경우는 그래서 alter system으로 변경하더라도 scope=spfile 로만 지정 가능한 것이다. | ||
+ | - 이러한 sttic parameter를 scope를 지정 안해서 memory로 하거나 both로 하게 되면 위의 ORA-2095 오류가 발생하게 된다. | ||
+ | |||
+ | |||
+ | == static parameter 확인방법 == | ||
+ | |||
+ | - 다음 명령을 실행해보자. <code sql> | ||
+ | SQL> select name, issys_modifiable from v$parameter; | ||
+ | </ | ||
+ | - issys_modifiable의 값으로 다음 세가지가 나타난다. | ||
+ | |||
+ | ^ FLASE | static parameter로 scope=spfile로만 값을 변경 가능하다. \\ 즉 값을 변경해도 이후 startup 시부터 영향을 미치게 된다. | | ||
+ | ^ IMMEDIATE | 값을 변경하면 현재 session부터 바로 영향을 받게된다. | | ||
+ | ^ DEFERRED | 변경된 값이 이후 접속되는 session부터 영향을 준다. | | ||
+ | |||
+ | |||
+ | == parameter 반영 확인방법 == | ||
+ | - alter system을 통해 parameter를 변경하는 경우 변경된 값이 반영이 잘 되었는가를 확인하려면 \\ 다음과 같이 show parameter나 v$prameter를 조회하고, | ||
+ | SQL> show parameter open_cursors | ||
+ | SQL> select value from v$prameter where name = ' | ||
+ | SQL> select value from v$spparameter where name = ' | ||
+ | </ | ||
+ | |||
+ | - 즉, scope=spfile로 parmaeter를 변경한 경우는 \\ v$spparameter에만 변경된 값이 나타나고, | ||
+ | | ||
+ | - Hidden Parameter 까지 조회가능하다. <code sql> | ||
+ | SQL> select n.ksppinm name , v.ksppstvl value from x$ksppi n , x$ksppsv v | ||
+ | where n.indx=v.indx | ||
+ | and n.ksppinm like ' | ||
+ | </ | ||