티스토리 뷰

오라클 11g 운용중에 SGA_MAX_SIZE 부족으로 인하여

 

SQL> ALTER SYSTEM SET SGA_MAX_SIZE=1690 SCOPE=SPFILE;
SQL> EXIT


하였으나, 오라클 재 접속 시도시 아래와 같은 에러 발생

 

ORA-00844 : Parameter not taking MEMORY_TARGET into account

ORA-00851 : SGA_MAX_SIZE 2147483648 cannot be set to more than MEMORY_TARGET 1694498816

 

이유인 즉슨 MEMORY_TARGET 으로 설정된 값보다 SGA_MAX_SIZE 값을 적용했기 때문에

발생한 문제였기에, MEMORY_TARGET 을 수정할 필요가 있었다.

 

우선 변경하기전 현재 설정되어 있는 spfile 의 정보를 Get

SQL> create pfile from spfile;
File created.
SQL> exit
Disconnected


이후, 재 생성 (또는 신규생성) 경우 pfile 을 열어서 수정한다.

리눅스에 설치된 경우라면 오라클 홈 / dbs 폴더의 initORA~~~.ora 파일을 vi 로 열면 되고

윈도우에 설치된 경우라면 오라클 홈 / database 폴더의 INITorcl.ORA ( 파일명은 상이할 수도 있음 )

 

해당파일을 열어보면

 

*.memory_max_target=1694498816  (* 없는 경우도 있음 / 해당 경우 오라클은 memory_target 을 max로 자동지정 )
*.memory_target=1694498816

*.sga_max_size=원하는 수정값
*.sga_target=0

 

저장 후에

SQL> create spfile from pfile;
File created.

 

로 pfile 에 방금 저장한 값을 spfile 에 적용한다.

이 후 오라클 재 가동시 정상적으로 구동한다.

 

* 참조 : 오라클 에러 메세지 

* 참조 : http://psoug.org/reference/oradim.html

* 참조 : http://www.dbmotive.com/ora-00844-parameter-not-taking-memory_target-into-account-see-alert-log-for-more-information/

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함