[ORACLE] DBCA 설치 2% 멈춤 · ORA-27124 해결 가이드

반응형

[ORACLE] DBCA 설치 2% 멈춤 · ORA-27124 해결 가이드

DBCA 설치 2% 멈춤 · ORA-27124 해결 가이드

DBCA 설치 2% 멈춤 · ORA-27124 해결 가이드

Oracle DBCA(Database Configuration Assistant)를 실행할 때 진행률이 2%에서 멈추는 현상은 리눅스 환경에서 매우 자주 발생하는 문제이며, 특히 아래 오류와 함께 나타납니다.

ORA-27124: unable to create shared memory segment
Linux-x86_64 Error: 1: Operation not permitted

이 오류는 대부분 HugePages 설정 문제, 특히 hugetlbshm_group 권한 미부여로 인해 발생합니다.

1️⃣ 오류 원인

Oracle 인스턴스가 HugePages 기반의 고정 메모리 영역을 요청하지만 해당 영역을 할당할 권한이 없기 때문에 shared memory segment 생성에 실패합니다.

대표 원인:

  • hugetlb_shm_group 미설정
  • Oracle 사용자가 HugePages 그룹에 속하지 않음
  • 커널 파라미터 vm.nr_hugepages는 설정돼 있으나 권한이 없음
  • SELinux / 커널 보안 제한으로 hugepage shm 생성 실패

2️⃣ 오류 재현 예시 (DBCA 실행 중)

SQL> startup
ORA-27124: unable to create shared memory segment
Linux-x86_64 Error: 1: Operation not permitted

DBCA에서는 2% 또는 3%에서 무한정 대기하게 됩니다.

3️⃣ 해결 방법 — Oracle 사용자에게 HugePages 권한 부여

✔ 1. Oracle 사용자의 gid 확인

id oracle
uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba)

✔ 2. 해당 gid를 hugetlbshm_group에 지정

예: gid = 1100 이라면

echo 1100 > /proc/sys/vm/hugetlbshm_group

Oracle이 HugePages shm을 생성할 수 있도록 허용하는 설정입니다.

✔ 3. sysctl 영구 적용

echo "vm.hugetlb_shm_group = 1100" >> /etc/sysctl.conf
sysctl -p

✔ 4. DBCA 재실행

이제 DBCA가 2%에서 멈추지 않고 정상적으로 SGA 메모리 영역을 확보합니다.

4️⃣ 추가적으로 확인해야 할 항목

📌 HugePages 수량 부족 여부

cat /proc/meminfo | grep -i huge

📌 /etc/security/limits.conf

oracle 사용자 nofile / nproc / memlock 설정 확인:

oracle soft memlock  9437184
oracle hard memlock  9437184

📌 SELinux Disabled 권장

getenforce

📌 Transparent HugePages 비활성화

cat /sys/kernel/mm/transparent_hugepage/enabled

active 상태라면 Oracle 설치 시 문제 발생 가능.

7️⃣ 기본 오류 대응 4단계

① 외부 노출 확인
커널 메시지(dmesg)에서 shmmni / shmget 관련 에러 확인
② 관련 기능 비활성화
Transparent HugePages, SELinux 등 Oracle 설치 방해 요소 점검
③ 포트·프로세스 차단
설치 전 기존 oracle 프로세스가 메모리를 점유하고 있는지 확인
④ 로그 모니터링 강화
alert.log, /var/log/messages, shm 오류 발생 시점 기록 확인

8️⃣ 결론

DBCA 설치가 2%에서 멈추고 ORA-27124가 발생할 때의 핵심 원인은 HugePages shm 생성 권한 부족입니다. Oracle 사용자의 gid를 vm.hugetlbshm_group에 부여하면 대부분 즉시 해결됩니다.

추가적으로 Transparent HugePages 비활성화 및 limits.conf 점검은 재발 방지에 매우 중요합니다.

반응형
LIST