Database초보우낙
10. control file을 multixplexing하기 본문
현재 controlfile이 딱 1개로만 운영되고 있다
그러다보니깐 이 1개가 깨지면 백업받은게 있어야 복구가 된다
백업을 자주 받지 않기 때문에 만약 컨트롤 파일 최신 백업본이 없으면 완전히 낭패이다
datafile은 만약 복구를 못하면 그냥 포기하면 되는데 controlfile을 복구못하면 db안올라온다
최신 controlfile 백업본을 자주 생성하던지 아니면 controlfile을 멀티 플랙싱하면 된다
■ 실습
#1. 현재 controlfile의 위치와 이름을 확인
#2. show parameter control_files라고 해서 파라미터 파일이 인식하는 controlfile의 위치를 확인
#3. 지금 현재 spfile로 운영되는지 pfile로 운영되는지 확인
#4. 다중화할 control file을 control_files에 명시하도록 spfile을 수정
#5. shutdown immediate 로 db를 내린다
#6. os에서 control01.ctl을 control02.ctl로 복하
#7. 인스턴스를 startup
◆구현
#1. 현재 controlfile의 위치와 이름을 확인
select name from v$controlfile;
-> /u01/app/oracle/oradata/Ouh/control01.ctl
#2. show parameter control_files라고 해서 파라미터 파일이 인식하는 controlfile의 위치를 확인
show parameter control_files

#3. 지금 현재 spfile로 운영되는지 pfile로 운영되는지 확인
show parameter spfile

#4. 다중화할 control file을 control_files에 명시하도록 spfile을 수정
--컨트롤 파일을 하나 더 만들거라고 알려주는 것이다
alter system set control_files='/u01/app/oracle/oradata/Ouh/control01.ctl' , '/u01/app/oracle/oradata/Ouh/control02.ctl'scope=spfile;
--01을 수정하면 02도 같은 내용을 적는다 --> 01이 깨지면 02를 사용한다
#5. shutdown immediate 로 db를 내린다
shutdown immediate
#6. os에서 control01.ctl을 control02.ctl로 복사

cd /u01/app/oracle/oradata/Ouh
cp control01.ctl control02.ctl
#7. 인스턴스를 startup
startup
#8. control file이 2개로 보이는지 확인합니다
select name from v$controlfile;
show parameter control_files

문제1. controlfile을 3개로 multiplexing 하기 (이수자평가2번)
#1. 현재 controlfile의 위치와 이름을 확인
select name from v$controlfile;

-> /u01/app/oracle/oradata/Ouh/control01.ctl
-> /u01/app/oracle/oradata/Ouh/control02.ctl
#2. show parameter control_files라고 해서 파라미터 파일이 인식하는 controlfile의 위치를 확인
show parameter control_files
다중화할 control file을 control_files에 명시하도록 spfile을 수정
--컨트롤 파일을 하나 더 만들거라고 알려주는 것이다
alter system set control_files='/u01/app/oracle/oradata/Ouh/control01.ctl' , '/u01/app/oracle/oradata/Ouh/control02.ctl' , '/u01/app/oracle/oradata/Ouh/control03.ctl' scope=spfile;

cd /u01/app/oracle/oradata/Ouh
cp control01.ctl control03.ctl

select name from v$controlfile;
show parameter control_files

문제1. controlfile을 3개로 multiplexing 하기 (이수자평가2번)
#1. 현재 controlfile의 위치와 이름을 확인
select name from v$controlfile;

-> /u01/app/oracle/oradata/Ouh/control01.ctl
-> /u01/app/oracle/oradata/Ouh/control02.ctl
#2. show parameter control_files라고 해서 파라미터 파일이 인식하는 controlfile의 위치를 확인
show parameter control_files
다중화할 control file을 control_files에 명시하도록 spfile을 수정
--컨트롤 파일을 하나 더 만들거라고 알려주는 것이다
alter system set control_files='/u01/app/oracle/oradata/Ouh/control01.ctl' , '/u01/app/oracle/oradata/Ouh/control02.ctl' , '/u01/app/oracle/oradata/Ouh/control03.ctl' scope=spfile;

cd /u01/app/oracle/oradata/Ouh
cp control01.ctl control03.ctl

Select name from v$controlfile;
show parameter control_files

'백업과 복구 > 완전복구' 카테고리의 다른 글
12. inactive 상태의 redo log file이 삭제 되었을 때 복구 (0) | 2024.04.14 |
---|---|
11. multiplexing된 controlfile 중에 1개를 삭제하고 복구 (0) | 2024.04.12 |
9. binary file로 백업받은 controlfile 복구 (0) | 2024.04.12 |
8. 1개의 control file이 삭제되었을 경우 (0) | 2024.04.12 |
7. 모든 data file들을 전부 삭제하고 복구 (0) | 2024.04.11 |