2010. 6. 24. 08:40 IT

 

  •  오라클 접속이 안되는 경우


    관련로그

    ORA-01034: ORACLE not available 
    ORA-27121: unable to determine size of shared memory segment
    IBM AIX RISC System/6000 Error: 13: Permission denied

    원인
    oracle 계정이 아닌 타 계정으로 oracle을 실행시킬때 oracle 실행파일의 permission 과 관련되어 발생하는 문제임.

    조치방법
    1. oracle이 기동되어 있는지 확인
    ps -ef | grep ora | grep -v grep
    # 특정경우 oracle 이 아닌 ora_xxx_xxxx 형태로 기동되는 경우가 있으므로 가장 확실한 방법은 oracle user가 소유한 프로세스를 확인하는 것이다.

    2. tuxedo 실행계정에서 설정한 ORACLE_SID 와 tnsnames.ora 파일내 설정한 SID 값이 동일한지 확인 (오타등)
    echo $ORACLE_SID # 통상 실행계정의 .profile 내에 설정한다.
    grep $ORACLE_SID $ORACLE_HOME/network/admin/tnsnames.ora # 같은 이름의 설정이 존재하면 OK

    3. $ORACLE_HOME/bin/oracle 실행파일의 권한을 확인하여 변경한다.
    정상적으로 실행되기 위해서는 oracle 실행파일의 권한은 아래와 같아야 한다.
    -rwsr-s--x
    통상 s 값이 설정되지 않은 경우가 있어 변경을 해주어야 한다.
    oracle 설치계정 또는 root 권한으로 아래와 같이 변경한다.
    chmod +s $ORACLE_HOME/bin/oracle
    변경이 정상적으로 되었는지 확인한다.
    ls -al $ORACLE_HOME/bin/oracle

    다시 턱시도를 기동하여 정상적으로 연결되면 OK

이 글은 스프링노트에서 작성되었습니다.

posted by smplnote