ORA-01034: ORACLE not available 에러가 발생합니다. 0 2 5,486

by 모던 [설치/설정] [2012.03.26 13:08:37]


Linux dbserver1 2.6.32-131.0.15.el6.x86_64 #1 SMP Tue May 10 15:42:40 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux

래드햇 6.0  (Centos 아닙니다.) 에 oracle 10g 를 원격으로 설치를 하였습니다.

./runInstaller -silent -force -waitforcompletion -responseFile /data/oracle_org/database/response/enterprise.rsp

설치가 완료된후 아래 명령어를 루트 권한으로 실행시켜주었구요

[root@srv1 oracle_tmp]# /data/oracle_org/oraInventory/orainstRoot.sh
Changing permissions of /data/oracle_org/oraInventory to 770.
Changing groupname of /data/oracle_org/oraInventory to oinstall.
The execution of the script is complete

[root@srv1 oracle_tmp]# /data/oracle_org/product/10g/root.sh
Running Oracle10 root.sh script...

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /data/oracle_org/product/10g

Enter the full pathname of the local bin directory: [/usr/local/bin]:
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.

그리고 디비에 접속하였습니다.

[root@srv1 oracle_tmp]# su - oracle
[root@srv1 oracle_tmp]$ sqlplus /as sysdba


SQL*Plus: Release 10.2.0.1.0 - Production on Mon Mar 26 12:49:26 2012

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> conn /as sysdba
Connected to an idle instance.

SQL>

접속은 잘 되는데요
쿼리를 날리면 아래처럼 에러가 발생합니다.

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

SQL> select * from dictionary where table_name like 'DBA_U%';
select * from dictionary where table_name like 'DBA_U%'
*
ERROR at line 1:
ORA-01034: ORACLE not available

SQL> alter user scott identified by tiger account unlock;
alter user scott identified by tiger account unlock
*
ERROR at line 1:
ORA-01034: ORACLE not available


SQL>

뭐가 문제인지 모르겠습니다. 어느부분을 살펴봐야하나요?

[root@srv1 dbs]# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 1
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 1048575
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144

by 손님 [2012.03.26 15:19:22]


일단 오라클 인스턴스가 올라오지 않으면

select * from dictionary where table_name like 'DBA_U%';

alter user scott identified by tiger account unlock;

이런 명령들은 아예 안되는게 당연합니다.

위에 질문중에

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

이부분이 문제인데요

ORA-27125: unable to create shared memory segment
에 대해서 검색해보세요

도움이 될지 모르겠지만
http://kldp.org/node/37151

참고해 보시길.

by 손님 [2012.03.26 15:22:16]

DBA_와 같은 것들은 아시다 시피 데이터 딕셔너리 입니다.
데이터 딕셔너리는 오라클이 open상태에서만 조회가능합니다.

마운트단계에서는 딕셔너리는 조회 불가능하고, 퍼포먼스 뷰만 조회 가능합니다.
v$......... 와 같은 ..

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입