OS환경 : Oracle Linux 7.5 (64bit)
DB 환경 : Oracle Database 19.3.0.0
방법 : 오라클 19c $ORACLE_HOME/dbs 디렉토리의 hc_{SID}.dat 파일과 lk{SID} 파일
$ORACLE_HOME/dbs 경로로 이동 후 확인
1 2 3 4 5 6 7 8 9 10 11 | $ cd $ORACLE_HOME/dbs $ ls -al total 28 drwxr-xr-x 2 oracle dba 114 Jul 4 21:45 . drwxr-xr-x 70 oracle dba 4096 Jul 3 11:29 .. -rw-rw---- 1 oracle dba 1544 Jul 4 21:45 hc_orcl.dat -rw-r--r-- 1 oracle dba 3079 May 14 2015 init.ora -rw-r--r-- 1 oracle dba 1037 Jul 4 09:12 initorcl.ora -rw-r----- 1 oracle dba 24 Jul 4 21:45 lkORCL -rw-r----- 1 oracle dba 2048 Jul 3 11:50 orapworcl -rw-r----- 1 oracle dba 3584 Jul 4 21:45 spfileorcl.ora |
hc_orcl.dat 파일
인스턴스 상태 점검 모니터링을 위해 $ORACLE_HOME/dbs/hc_<ORACLE_SID>.dat가 작성됨
여기에는 인스턴스 상태를 모니터링하고 인스턴스가 시작되지 않은 경우 다운 된 이유를 확인하는 데 사용되는 정보가 포함되어 있음
lkORCL 파일
Oracle DB 기동 시 shared memory를 잠그는데 사용됨
두개 파일 모두 삭제 후 DB 기동 시 다시 생성됨
DB 중지 상태
1 2 | $ ps -ef | grep pmon oracle 18741 9106 0 23:58 pts/0 00:00:00 grep --color=auto pmon |
hc_orcl.dat, lkORCL 파일 삭제
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | $ cd $ORACLE_HOME/dbs $ ls -al total 28 drwxr-xr-x 2 oracle dba 114 Jul 4 21:45 . drwxr-xr-x 70 oracle dba 4096 Jul 3 11:29 .. -rw-rw---- 1 oracle dba 1544 Jul 4 21:45 hc_orcl.dat -rw-r--r-- 1 oracle dba 3079 May 14 2015 init.ora -rw-r--r-- 1 oracle dba 1037 Jul 4 09:12 initorcl.ora -rw-r----- 1 oracle dba 24 Jul 4 21:45 lkORCL -rw-r----- 1 oracle dba 2048 Jul 3 11:50 orapworcl -rw-r----- 1 oracle dba 3584 Jul 4 21:45 spfileorcl.ora $ rm -rf hc_orcl.dat lkORCL $ ls -al total 20 drwxr-xr-x 2 oracle dba 81 Jul 4 23:59 . drwxr-xr-x 70 oracle dba 4096 Jul 3 11:29 .. -rw-r--r-- 1 oracle dba 3079 May 14 2015 init.ora -rw-r--r-- 1 oracle dba 1037 Jul 4 09:12 initorcl.ora -rw-r----- 1 oracle dba 2048 Jul 3 11:50 orapworcl -rw-r----- 1 oracle dba 3584 Jul 4 21:45 spfileorcl.ora |
DB nomount 로 기동
1 2 3 4 5 6 7 8 | SQL> startup nomount ORACLE instance started. Total System Global Area 1677718256 bytes Fixed Size 8897264 bytes Variable Size 536870912 bytes Database Buffers 1124073472 bytes Redo Buffers 7876608 bytes |
기동 중 파일 확인
1 2 3 4 5 6 7 8 9 10 | $ ls -al total 24 drwxr-xr-x 2 oracle dba 118 Jul 5 00:00 . drwxr-xr-x 70 oracle dba 4096 Jul 3 11:29 .. -rw-rw---- 1 oracle dba 1544 Jul 5 00:00 hc_orcl.dat -rw-r--r-- 1 oracle dba 3079 May 14 2015 init.ora -rw-r--r-- 1 oracle dba 1037 Jul 4 09:12 initorcl.ora -rw-r----- 1 oracle dba 0 Jul 5 00:00 lkinstorcl -rw-r----- 1 oracle dba 2048 Jul 3 11:50 orapworcl -rw-r----- 1 oracle dba 3584 Jul 4 21:45 spfileorcl.ora |
lkORCL이 아닌 lkinstorcl 파일이 잠깐 생겼다가 사라짐
nomount 기동 후 파일 확인
1 2 3 4 5 6 7 8 9 | $ ls -al total 24 drwxr-xr-x 2 oracle dba 100 Jul 5 00:00 . drwxr-xr-x 70 oracle dba 4096 Jul 3 11:29 .. -rw-rw---- 1 oracle dba 1544 Jul 5 00:00 hc_orcl.dat -rw-r--r-- 1 oracle dba 3079 May 14 2015 init.ora -rw-r--r-- 1 oracle dba 1037 Jul 4 09:12 initorcl.ora -rw-r----- 1 oracle dba 2048 Jul 3 11:50 orapworcl -rw-r----- 1 oracle dba 3584 Jul 5 00:00 spfileorcl.ora |
hc_orcl.dat 파일만 생김
마운트 상태로 변경
1 2 3 | SQL> alter database mount; Database altered. |
파일 확인
1 2 3 4 5 6 7 8 9 10 | $ ls -al total 28 drwxr-xr-x 2 oracle dba 114 Jul 5 00:01 . drwxr-xr-x 70 oracle dba 4096 Jul 3 11:29 .. -rw-rw---- 1 oracle dba 1544 Jul 5 00:01 hc_orcl.dat -rw-r--r-- 1 oracle dba 3079 May 14 2015 init.ora -rw-r--r-- 1 oracle dba 1037 Jul 4 09:12 initorcl.ora -rw-r----- 1 oracle dba 24 Jul 5 00:01 lkORCL -rw-r----- 1 oracle dba 2048 Jul 3 11:50 orapworcl -rw-r----- 1 oracle dba 3584 Jul 5 00:01 spfileorcl.ora |
lkORCL 파일도 생성됨
strings 명령으로 파일 내용 확인
1 2 3 4 5 | $ strings hc_orcl.dat DO NOT DELETE OR OVERWRITE THIS FILE!!! orcl $ strings lkORCL DO NOT DELETE THIS FILE! |
두 파일 모두 삭제하지 말라고 되어있음
db 중지 상태에서는 삭제해도 되지만 기동중에는 삭제하지 않는 것을 권장함
11.2 버전 이하에서 db 운영중 hc_orcl.dat 파일 삭제 시 ORA-7445가 발생한다고함
하지만 그 이후 버전에서는 운영중 hc_orcl.dat 파일을 삭제해도 재기동시 다시 생성된다고 설명하고 있음
참조 : Doc. 390474.1, Doc. 1505155.1
http://www.dba-oracle.com/t_hc_orcl_dat_file.htm
http://www.dba-oracle.com/t_ora_01102_cannot_mount_database_in_exclusive_mode.htm'ORACLE > Admin' 카테고리의 다른 글
오라클 11g R2 스캔 리스너 제거 및 추가 (scan listener remove) (0) | 2020.07.02 |
---|---|
오라클 11g R2 tfa(ahf) 설치 및 로그수집 가이드(SRDC) (0) | 2020.06.27 |
오라클 19c 버퍼캐쉬 플러쉬 테스트(buffer cache flush) (0) | 2020.06.24 |
오라클 11g R2 싱글 DB 환경에서 grid 기동 및 중지 (0) | 2020.06.24 |
오라클 19c Hugepages 설정 방법 (3) | 2020.06.24 |