이 에러 메세지는 SQL 정보를 저장할 수 잇는 충분한 크기의 사용 가능 메모리 조각을 공유 풀의 프리리스트에서 찾지 못하고 또한 LRU리스트를 검색해도 찾지 못 할 경우 발생한다.
이를 해결하기 위해서는 다음의 4가지를 고려할 수 있다.
1. Shared Pool 초기화 - Shared Pool 내에 존재하는 모든 내용을 제거하여 초기화를 수행할 수 있다. Shared Pool 내의 연속된 메모리 조각들을 하나의 조각으로 합쳐주는 역활을 수행하게 된다. 수행 방법은 다음과 같다. SQL> ALTER SYSTEM FLUSH SHARED_POOL; 그러나 위의 방법은 다른 SQL 정보도 Shared Pool에서 제거하므로 해당 명령어를 수행한 후에는 모든 SQL이 하드 구문 분석을 수행하게 되어 성능 저하가 발생 할 수 있다.
2. 패치 등을 고려 - ORA-4031 에러는 오라클 버그로 등록된 부분이 있으므로 해당 오라클 버전을 확인하여 오라클 패치 적용 및 업그레이드 등을 고려할 수 있다.
3. 파라미터 설정 - SHARED_POOL_RESERVED_SIZE 파라미터 설정을 통해 에러를 감소 시킬 수 있다.
4. Large Pool 설정 - 병렬 프로세싱을 사용한다면 Large Pool 설정으로 해당 에러를 감소 시킬 수 있다.
|
'Oracle > Trouble Shooting' 카테고리의 다른 글
ORA-01455 (0) | 2013.09.04 |
---|---|
Runinstaller 시 자바 에러 (0) | 2013.08.27 |
ORA-00257 (ORA-19815 : WARRING : db_recover_file_dest_size) (0) | 2013.08.23 |
ORA-19809, ORA-19804, ORA-19815 (0) | 2013.08.14 |
ORA-02097, ORA-00439 ERROR (0) | 2013.08.08 |