본문 바로가기

DB

[DB] 오라클 startup / shutdown


오라클을 설치하고 스타트 시키는데 에러가 발생한다.

[ora9i@cent5_4 ~]$ sqlplus /nolog

SQL*Plus: Release 9.2.0.4.0 - Production on Tue May 18 19:50:24 2010

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

SQL> startup
ORA-01031: insufficient privileges

검색 결과 이런 저런 방법들이 있던데, 이게 정상적인지는 몰라도 다음 방법으로 인스턴스가 시작되었다.

SQL> connect /as sysdba
Connected to an idle instance.       <== 이거는 DB 가 idle 상태임을 알려주고 있다.
SQL> startup
ORACLE instance started.

Total System Global Area  236000356 bytes
Fixed Size     451684 bytes
Variable Size  201326592 bytes
Database Buffers   33554432 bytes
Redo Buffers     667648 bytes
Database mounted.
Database opened.

종료도 정상적으로 된다.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

이건 머지 ㅡ.ㅡ;; 정상인지는 좀더 공부해서 확인해 봐야 할거 같다.

ps. 위에 에러에 대해서 알았다.
책에서는 오라클 접속시 sqlplus / as sysdba 로 접속을 하는데.. 이건 오라클 10g 부터 가능하고 9i 에서는 접속이 안되서
sqlplus /nolog 로 접속 하였다. 그러니 인스턴스가 선택이 안되서 저런 에러가 나지.. 킁.. connect / as sysdba 를 해주면 되는 이유가 당연하구나!!

ps2. 참고로 오라클 인스턴스를 시작했을때 데몬 리스트
ora9i     4863     1  2 19:58 ?        00:00:00 ora_pmon_DB09
ora9i     4865     1  2 19:58 ?        00:00:00 ora_dbw0_DB09
ora9i     4867     1  2 19:58 ?        00:00:00 ora_lgwr_DB09
ora9i     4869     1  2 19:58 ?        00:00:00 ora_ckpt_DB09
ora9i     4871     1  2 19:58 ?        00:00:00 ora_smon_DB09
ora9i     4873     1  2 19:58 ?        00:00:00 ora_reco_DB09
ora9i     4875     1  2 19:58 ?        00:00:00 ora_cjq0_DB09
ora9i     4877     1  1 19:58 ?        00:00:00 ora_qmn0_DB09
ora9i     4879     1  2 19:58 ?        00:00:00 ora_s000_DB09
ora9i     4881     1  2 19:58 ?        00:00:00 ora_d000_DB09

인스턴스를 startup 하지 않으면 위 데몬들은 실행이 되어 있지 않는다.


NOMOUNT 단계란?

INSTANCE 생성 단계로 parameter 파일을 읽고 SGA를 설정된 크기로 할 당 후 BACKGROUND 프로세스를 생성한다. 동시에 에러를 기록하는 trace 파일, alert 파일도 OPEN시킨다. 이때 데이터베이스를 새로 생성하거나, control 파일을 다시 생성한다.

MOUNT 단계란?

생성된 인스턴스를 사용할 데이터베이스를 찾는다.
parameter 파일에서 CONTROL_FILES에 기록된 위치의 control 파일을 읽고 데이터베이스의 물리적 아키텍쳐를 확인한다. 이때, data 파일, redo log 파일의 정보도 확인한다.
이때, 데이터베이스의 물리적 아키텍쳐를 변경하거나, data 파일의 이름 변경, ARCHIVE Mode 변경, 데이터베이스의 전체 복구를 수행한다.

OPEN 단계란?

사용자가 접근 가능한 단계로 data 파일, redo log 파일이 OPEN된다.
이때 오라클 데이터베이스인 Control 파일, Data 파일, Redo log 파일의 동기화 정보가 다르면 에러를 출력한다. 오라클 서버의 BACKGROUND 프로세스인 SMON이 자동으로 복구를 STARTUP한다.