본문 바로가기
IT/Oralce work shop 1

[오라클]시작과 종료

by BlowIt 2011. 11. 3.

오라클 시작

 

 

오라클 시작과 종료를 설명할 때 보통 위의 그림으로 설명한다.
각각의 상태가 어떤 상태이며 어떠한 것을 접근할 수 있고 어떤 것을 수행할 수 있는지 설명한다.

오라클 시작순서
1. shutdown
    - 해당 DB에 대한 어떠한 접근도 허용하지 않는다.
2. nomount
    - instance가 형성
    - parameter 접근
    - alert_log, trace파일 접근
    - controlfile 재생성
    - database 생성(새로운 DB를 만드는 경우)
3. mount
    - 컨트롤파일에 대한 접근
    - 데이터파일, 리두로그 파일에 대한 접근을 준비
    - (컨트롤파일 안에 있는 데이터파일, 리두로그 파일의 물리적인 위치를 읽어 매핑만 시켜준다)
    - archive log mode / noarchive log mode로의 변경
    - flashback 활성화
4. open
    - mount 단계에서 매핑만 시켜주었던 것을 실제 존재여부를 확인
    -사용가능하도록 한다. 

** 각 단계에서 어떠한 것을 수행하는지 알고있어야만 적절한 트러블슈팅이 가능할 것이다.
** 만약 db가 nomount상태로 올라가지 못한다면 의심해봐야 할 것은 파라미터파일의 유무,
    적절한 파라미터가 설정되어 있는가 등일 것이다.


---------------------------------------------------------------------------------
>-------------------------------------------------------------------------------<
<tip>
shutdown->nomount->mount->open
의 단계를 거치는 오라클은 

    SQL>startup nomount

와 같이 각 단계로 이동할 수 있는데 이때 nomount단계에서 바로

    SQL>alter database open;

명령으로 open 단계로 가지 못한다.
따라서 mount단계를 먼저 선행한 후 open단계로 가는 것이 방법이다.
>-------------------------------------------------------------------------------<
---------------------------------------------------------------------------------



오라클 종료
  shutdown 옵션
     1) normal
        추가적인 세션 : x
        세션종료 대기 : o

     2) transactional
        추가적인 세션 : x
        세션종료 대기 : x (단, 작업완료까지는 대기)
        수행 중 작업 : o
             * normal과는 다르게 현재 작업이 완료된(commit을 수행한) 세션에 대해서
             즉시 종료된다는 차이점이 있다. 따라서 batch작업 등이 수행 중이라면 끝날 때 까지 종료되지 않음을 의미한다.

     3) immediate
        추가적인 세션 : x
        세션종료 대기 : x 
        수행 중 작업 : 강제종료(단, 수행 중 작업은 rollback 후 종료)
              * transactional 보다 더 빠르게 종료할 수 있다. 현재 commit을 완료하지 않은 세션에 대해서도 종료한다.
              따라서 작업이 완료된 시점부터 작업 중인 데이터까지는 rollback처리 된다.

     4) abort
        추가적인 세션 : x
        세션종료 대기 : x 
        수행 중 작업 : 강제종료(비정상종료)
              * rollback시키지 않고 바로 종료시켜버린다. 이는 instance에 남아있지만 commit완료된 데이터에대한
                손실로 볼수도 있다. 따라서 백그라운드 프로세스 SMON은 재기동시 instance에 대한 복구를 수행하게 된다.

SMON의 instance복구
    SMON은 비정상종료된 DB는 instance에 있는 data들이 commit완료되었는지, 아닌지를 판단해
  instance 복구를 수행하게 된다. commit완료되었다면 rollforward해 commit을 적용시키고
  아니라면 rollback해 데이터 정합성을 지켜준다. 
 

'IT > Oralce work shop 1' 카테고리의 다른 글

segment와 object  (0) 2012.05.10
[오라클] parameter file  (0) 2011.11.07
[오라클]backup script  (0) 2011.11.02
[오라클] catalog database  (0) 2011.11.02
[오라클] backup  (0) 2011.11.02

댓글