피드로 돌아가기
ORA-00064 오류 원인과 해결 방법 완벽 가이드
Dev.toDev.to
Database

ORA-00064 오류 원인과 해결 방법 완벽 가이드

OS 커널 파라미터 최적화를 통한 Oracle ORA-00064 메모리 할당 오류 해결

umzzil nng2026년 5월 22일11intermediate

Context

Oracle 인스턴스 기동 시 SGA 및 공유 메모리 세그먼트 할당 요청이 OS 커널 제한에 의해 거부되는 상황 분석. 물리 RAM 용량과 무관하게 OS 레벨의 SHMMAX, SHMALL 설정치 및 /dev/shm 크기가 Oracle 파라미터 설정값보다 낮아 발생하는 리소스 불일치 문제임.

Technical Solution

  • SGA 크기를 상회하는 kernel.shmmax 및 kernel.shmall 설정으로 OS 수준의 공유 메모리 할당 한계 확장
  • AMM 구성 시 /dev/shm(tmpfs) 크기를 memory_target 이상으로 remount 하여 가상 메모리 영역 확보
  • 고가용성 및 안정성 확보를 위해 AMM에서 ASMM(sga_target + pga_aggregate_target) 구조로 전환하여 메모리 관리 제어권 강화
  • processes 파라미터 증가에 따른 공유 메모리 구조체 확장 대응을 위해 kernel.pid_max 및 ulimit nproc 상향 조정
  • 인스턴스 기동 전 SGA_BYTES와 OS 파라미터 간 정합성을 자동 검증하는 사전 체크 스크립트 도입

- Oracle SGA 설정 변경 전 kernel.shmmax/shmall 값의 상위 호환 여부 확인 - AMM 사용 시 /etc/fstab 내 tmpfs size 설정값과 memory_target 일치 여부 검토 - processes 파라미터 조정 시 ulimit -u(max user processes) 제한치 동시 상향 적용 - 파라미터 변경 시 SCOPE=SPFILE 적용 후 pfile 백업 및 OS 정합성 검증 프로세스 수행

원문 읽기