프린트 하기

OS환경 : Oracle Linux 7.6 (64bit)

 

DB 환경 : Oracle Database 19.15.0.0

 

방법 : 오라클 19c shutdown abort 종료 시 파라미터 적용 여부 확인

오라클에서 일반적으로 파라미터를 적용할 때 재기동이 필요한 파라미터의 경우

shutdown immediate 로 종료 후 기동하여 파라미터를 적용시킴

abort 옵션으로 종료했을때에도 정상적으로 적용되는지 확인차 테스트해봄

 

 

먼저 immediate 옵션 shutdown 테스트

processes 파라미터 값 확인

1
2
3
4
5
SQL> show parameter processes
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
processes                            integer     300

현재 300임

 

 

scope=spfile로 파라미터 변경(100 증가)

1
2
3
SQL> alter system set processes = 400 scope=spfile;
 
System altered.

 

 

shutdown immediate 로 db 정상 종료 후 재기동

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
 
SQL> startup
ORACLE instance started.
 
Total System Global Area 3221221504 bytes
Fixed Size                  8929408 bytes
Variable Size            2936012800 bytes
Database Buffers          268435456 bytes
Redo Buffers                7843840 bytes
Database mounted.
Database opened.

 

 

processes 파라미터 값 재확인

1
2
3
4
5
SQL> show parameter processes
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
processes                            integer     400

정상적으로 400으로 변경됨

 

 

abort 옵션 shutdown 테스트

scope=spfile로 파라미터 재변경(200 감소)

1
2
3
SQL> alter system set processes = 200 scope=spfile;
 
System altered.

 

 

shutdown abort 로 db 강제 종료 후 재기동

1
2
3
4
5
6
7
8
9
10
11
12
13
SQL> shutdown abort
ORACLE instance shut down.
 
SQL> startup
ORACLE instance started.
 
Total System Global Area 3221221504 bytes
Fixed Size                  8929408 bytes
Variable Size            2936012800 bytes
Database Buffers          268435456 bytes
Redo Buffers                7843840 bytes
Database mounted.
Database opened.

 

 

processes 파라미터 값 재확인

1
2
3
4
SQL> show parameter processes
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
processes                            integer     200

정상적으로 변경됨

 

 

scope=spfile 의 의미가 파라미터 변경을 memory 가 아니라 spfile에 저장하는 것이기 때문에

db가 종료되기 전에 이미 변경값이 spfile에 저장되어 있는것이고,

이후 기동될 때 해당 spfile을 읽어서 기동 되는것이기 때문에 shutdown 시 abort 나 immediate 옵션 상관이 없음

 

 

scope=spfile로 파라미터 적용 후 show parameter 명령이 아닌 show spparameter 명령을 사용해 확인해서

spfile에 적용된 현재 파라미터 값을 확인할 수도 있고,

strings 명령을 이용해 spfile에 입력되어 있는 파라미터값을 확인할수도 있음 

위 테스트 중 shutdown abort 수행 전 확인 한 내용

1
2
3
4
5
6
7
8
9
SQL> show spparameter processes
 
SID      NAME                          TYPE        VALUE
-------- ----------------------------- ----------- ----------------------------
*        processes                     integer     200
 
$ cd $ORACLE_HOME/dbs
$ strings spfileorcl.ora | grep processes
*.processes=200

 

 

참조 :