Backup/Archive Log Mode

DB가 종료된 후 데이터 파일이 삭제 시키고 DB 올릴 경우

잇꼬 2024. 1. 12. 16:45
728x90
반응형
SMALL

# DB 정상적인 종료

SQL> shutdown immediate


# 장애유발 #
SQL> ! rm /u01/app/oracle/oradata/ora11g/users01.dbf
SQL> ! ls /u01/app/oracle/oradata/ora11g/users01.dbf


# DB 올리기
SQL> startup
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/u01/app/oracle/oradata/ora11g/users01.dbf'


# 복구 방법 #

1. online 모드로 확인

select * from v$recover_file;



2. offline 모드 변경
SQL> alter database datafile '/u01/app/oracle/oradata/ora11g/users01.dbf' offline;


3. offline 모드로 확인

select * from v$recover_file;


4. DB 올리기 
SQL> alter database open;

 

5. 가장 최근에 백업 파일을 문제되는 파일 위치에 복구(restore)
#) hot backup -> data file 원위치 해주기
SQL> ! cp -av /home/oracle1/backup/arch/hot_20240112/users01.dbf /u01/app/oracle/oradata/ora11g/


6. 백업 이후에 변경된 redo 정보를 적용
#) recover를 tablespace로 하기 
SQL> recover tablespace users;

7. test1 data 확인 
SQL> select * from hr.test1;


7-1. tablespace users table 생성 해보기
SQL> create table hr.test2 tablespace users as select * from hr.employees;


8. online 확인

select name, status from v$datafile;

9. 복구 완료

728x90
반응형
LIST