검색결과 리스트
글
Oracle 시작하기와 종료하기.
- 오라클 서버를 시작하기 위해서는, SYSDBA 권한을 가지고있는 계정으로 로그인 해야한다.
oracle@edydr1p0-orcl ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Mon Jun 15 00:30:51 2015
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup ORACLE instance started.
Total System Global Area 313159680 bytes Fixed Size 2212936 bytes Variable Size 192940984 bytes Database Buffers 113246208 bytes Redo Buffers 4759552 bytes Database mounted.
Database opened. |
- 오라클 서버 시작단계
1) STARTUP 명령어를 수행하면, 서버프로세스는 Parameter File을 찾아 읽는다.
*Parameter File에는 정적파라미터 파일인 Pfile과 동적 Parameter 파일인 Spfile이 있다.
정적파라미터 파일은 관리자가 수동으로 변경해야하만 하며, 동적 파라미터 파일은 서버프로세스가 자동으로 변경.
2)NOMOUNT 단계에서는 Parameter파일을 읽고, 그 안에 저장되어 있는 파라미터값을 참고하여 인스턴스를 생성한다.
* 인스턴스는 SGA와 Background Process들로 구성되어 있으므로 MOUNT단계에서 RAM에 인서턴스가 생성되어 작업할 수 있는 메모리 공간이 확보된다.
* Alert Log 파일을 열어서 로깅을 시작
* Alert Log는 인스턴스가 시작되어 운영되고 종료될 때까지 중요한 내용을 모두 저장하는 파일.
* Alert Log 경로
10g : $ORACLE_BASE/admin/SID/bdump/alert_SID.log
11g : $ORACLE_BASE/diag/rdbms/SID/SID/trace/alert_SID.log
ex) 환경 OEL5, ORACLE 11g [oracle@edydr1p0-orcl trace]$ pwd /u01/app/oracle/diag/rdbms/orcl/orcl/trace [oracle@edydr1p0-orcl trace]$ ls -ltr total 1536 -rw-r----- 1 oracle dba 77 Jun 8 10:50 orcl_vktm_17584.trm -rw-r----- 1 oracle dba 1091 Jun 8 10:50 orcl_vktm_17584.trc |
3)NOMOUNT 단계를 마치면, Control file을 읽고 MOUNT 단계 진행.
- Control File의 위치정보는 Parameter File에 기록되어있음.
- MOUNT단계에서는 Database의 이상유무 확인.
ex) DBCA 생성 DB, ASM disk 사용 SQL> show parameter control
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ control_file_record_keep_time integer 7 control_files string +DATA/orcl/controlfile/current .260.881837513, +FRA/orcl/cont rolfile/current.256.881837515 control_management_pack_access string DIAGNOSTIC+TUNING ex) 수동생성 DB, PROD SQL> show parameter control
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ control_file_record_keep_time integer 7 control_files string /u01/app/oracle/oradata/PROD/c ontrol01.ctl control_management_pack_access string DIAGNOSTIC+TUNING SQL> show parameter control
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ control_file_record_keep_time integer 7 control_files string /u01/app/oracle/oradata/PROD/c ontrol01.ctl control_management_pack_access string DIAGNOSTIC+TUNING |
4)MOUNT 단계에서 이상유무 확인 후 OPEN 단계로 진행.
- INSTANCE Clush로 판단되면, Open 단계로 가기전에 SMON에 의해 Instance Recovery 수행.
- 복구내용을 Redo Log File에서 찾는다. 복구내용이 Redo Log File에 없거나, Archive Log File에 있는 경우 SMON을 통해 Instance Recovery를 수행할 수 없으며 DBA에 의해 Media Recovery 수행해야함.
1. Parameter File (초기화 파라미터 파일)
1) 파라미터 파일: Oracle Server가 Startup 하게되면 SGA를 생성하고 Background Process를 시작해야하는데 SGA를 생성할 때 각 SGA구성요소 관련사항을 기록해 두는 파일.
| Pfile | Spfile |
파일 경로 | $ORACLE_BASE/dbs | |
파일 이름 | initSID.ora | SpfileSID.ora |
내용 변경 | 관리자 | 서버 프로세스 |
파일형태 | Text(편집기 변경가능) | Binary (편집기로 변경불가) |
- 9i 버전부터 Spfile이 등장하게되었다.
- Spfile 경우 DB사용자가 SQL문을 수행하여 변경하여야 한다.
2) 파라미터 파일의 내용변경
- pfile :
* OS 편집기를 이용하여 파라미터 파일의 내용을 직접 수정한 후 저장하면 됨.
* 변경된 사항은 다음 시작부터 적용된다. 9i 이후부터 Dynamic SGA기능이 도입되어 pfile을 사용하더라도
* alter system set 명령어를 이용해 재부팅 없이 즉시 적용할 수 있다.
(변경해도 Pfile은 변경되지 않으므로, Pfile을 수동으로 변경하지 않으면 재기동 후 원래값으로 돌아간다. )
- spfile
* 관리자가 직접 내용을 수정할 수 없다.
* 내용 변경시 Alter system set 명령을 사용하여 서버프로세스에게 변경을 요청해야함.
SQL> ALTER SYSTEM SET DB_CACHE_SIZE=30m Scope=Memory;
* Scope 옵션
MEMORY : Spfile 내용은 변경하지 말고 현재 작동 중인 인스턴스에만 적용.
SPFILE : 현재 운영중인 인스턴스에 적용하지말고, SPFILE 내용만 변경.
BOTH: 두 가지 모두에 적용. (Scope 옵션을 사용하지 않을 경우 기본모드)
2. Oracle Inatance 종료하기.
- sysdba 권한을 가진 계정으로 shutdown 명령을 통해 Instance 종료.
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. |
1) NORMAL
- SQL> shutdown normal 또는 shutdown 명령어로 종료.
- 명령전에 접속되어 있던 사용자가 있을 경우, 사용자들이 모두 스스로 접속을 종료할 때까지 기다렸다가 종료.
- 사용자가 접속을 종료하지 않으면, Instance는 종료되지 않는다.
2) TRANSACTIONAL
- SQL> shutdown transactional 명령어로 종료.
- 사용자가 스스로 접속을 종료할 때 까지 기다리지않고 강제로 접속을 중단시킨 후 Instance를 종료.
- 접속을 강제로 중단 시키는 시점은 사용자가 수행중인 Transaction이 끝나는 시점.
- DML 작업을 수행 중일 경우에는 해당 트랜잭션을 종료하는 명령어 (DDL, DCL, TCL) 수행 시 접속을 강제로 종료시킨 후 데이터를 저장하고 인스턴스를 종료.
- 사용자가 트랜잭션을 종료하지 않게되면 Instance를 종료. (사용자가 COMMIT, ROLLBACK 명령어를 수행해야함.)
3) IMMEDIATE
- SQL> shutdown immediate 명령어로 종료.
- 사용자의 행동에 상관없이 즉시 접속을 강제로 종료.
- 접속이 종료되는 시점까지 해당 사용자가 수행한 작업 중에 Commit이 완료된 데이터를 DB Buffer cache에서 찾아서 데이터파일로 저장해주고, 완료되지 않은 작업은 Rollback 시킨 후 Instance 종료.
4)ABORT
- SQL> shutdown abort 명령어로 종료.
- 사용자의 행동에 상관없이 즉시 접속을 강제로 종료.
- immediate와 차이점은, 사용자가 수행한 작업을 저장하지도 Rollback하지도 않고 즉시 Instance 종료.
- 다시 Startup될 때 SMON이 Instance Recovery를 수행해서 복구함.
'Oracle 참고서적 정리 > 오라클 관리실무' 카테고리의 다른 글
6-1 Redo Log 관리하기(Redo Log 생성원리) (0) | 2015.06.18 |
---|---|
5. Control File 관리하기 (0) | 2015.06.17 |
3. Oracle Background Processes (0) | 2015.06.14 |
2. SQL 문장 실행 원리 (0) | 2015.06.14 |
1. Oracle Server 전체구조. (0) | 2015.06.10 |
RECENT COMMENT