16일차 백업 1.close 백업 2.open 백업 복구 1. noarchive mode--닫힌복구 다른위치에 복구(imsy) 2. archive mode-완전복구(4가지) 1) 닫힌 데이터베이스 복구(System tablespace 문제시-shutdown) 2) 열린 데이터베이스 복구(일반 tablespace 문제시-offline) 3) 다른위치에 datafile복구(imsy) 4) 백업하지 않은 datafile복구 불완전복구(3가지) 1) 시간기반 복구 2) 취소기반 복구(아카이브 로그의 손실발생) ------------------------------------------------------------------------------------------------------------------------------------------------------------ 17일차 3) 백업control파일을 이용한 복구(아카이브로그가 아닌 ctl파일에서복구) log파일 복구(4가지) 1)대기 상태 그룹의 멤버문제 2)대기 상태 그룹의 문제(2가지: Open, Close복구) 3)Current 로그 장애(2가지: Open, Close복구) 4)전체삭제(2가지 : 모든 Redolog파일 삭제, 모든 Control파일 삭제) |
3) 백업control파일을 이용한 복구(아카이브로그가 아닌 ctl파일에서복구)
테이블을 삭제해야 하는데 테이블스페이스를 삭제한 경우에 사용
① 새로운 테이블스페이스 생성
CREATE TABLESPACE TEST
DATAFILE 'C:\ADISK\DISK1\TEST0.DBF' SIZE 10M;
IMSY폴더에 백업
② 테이블스페이스 삭제
DROP TABLESPACE TEST INCLUDING CONTENTS AND DATAFILE ;
삭제한 시간 기억 : 10시04분
③ 시간이 기억나지 않을때 확인
위치 : C:\app\itwill\diag\rdbms\testdb\testdb\trace
alert_testdb.log : 서버가 STARTUP하고 SHUTDOWN되는 모든 것을 기억
Wed Jan 30 10:04:29 2019
④ 데이터베이스 SHUTDOWN
⑤ 데이터 복사 후 이동
TEST0.DBF는 DISK파일로
나머지 CTL파일과 DBF파일은
⑥ MOUNT까지 STARTUP
⑦ 데이터 복구
RECOVER DATABASE UNTIL TIME ‘2019-01-30:10:04:25’ USING BACKUP CONTROLFILE;
AUTO
⑧ 데이터베이스 시작
ALTER DATABASE OPEN RESETLOGS;
3. log파일 복구(4가지)
[사전작업]
① 로그파일멤버 생성
ALTER DATABASE ADD LOGFILE MEMBER
'C:\APP\ITWILL\ORADATA\TESTDB\REDO01B.LOG' TO GROUP 1,
'C:\APP\ITWILL\ORADATA\TESTDB\REDO02B.LOG' TO GROUP 2,
'C:\APP\ITWILL\ORADATA\TESTDB\REDO03B.LOG' TO GROUP 3
② 그룹1번이 CURRENT가 되도록 해준다.
③ 데이터베이스 백업
SHUTDOWN IMMEDIATE
1) 대기 상태 그룹의 멤버문제
① 현재상태
CURRENT : 그룹 1
INACTIVE : 그룹2, 그룹3
② 그룹2의 REDO02B.LOG 삭제
SHUTDIWN IMMEDIATE → TESTDB의 REDO02B.LOG 삭제 → STARTUP
데이터베이스는 정상적으로 작동. REDO02.LOG파일이 있기 때문에
③ REDO02B.LOG를 오라클의 기억에서 삭제
ALTER DATABASE DROP LOGFILE MEMBER
'C:\APP\ITWILL\ORADATA\TESTDB\REDO02B.LOG';
④ 멤버 추가
ALTER DATABASE ADD LOGFILE MEMBER
'C:\APP\ITWILL\ORADATA\TESTDB\REDO02B.LOG' TO GROUP 2;
⑤ 로그를 한바퀴 돌려서 다시 그룹1이 CURRENT로 만든다
2) 대기 상태 그룹의 문제(2가지: Open, Close복구)
OPEN과 CLOSE는 똑같은 방법
SHUTDOWN을 하냐 안하냐..
① 그룹3 삭제
SHUTDOWN IMMEDIATE → 그룹3 다 삭제
② STARTUP
MOUNT상태까지만 시작가능하다
③ 오류 발생시 해결 방안
EXIT
SQLPLUS / AS SYSDBA
SHUTDOWN ABORT
④ MOUNT상태까지 시작
STARTUP MOUNT;
SELECT STATUS FROM V$INSTANCE;
⑤ 현재상태 확인
SELECT GROUP#,SEQUENCE#,ARCHIVED,STATUS FROM V$LOG;
⑥ 사용하지 않은 그룹 UNUSED로 변경
ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 3;
⑦ 사용하지 않은 로그파일 삭제
ALTER DATABASE DROP LOGFILE GROUP 3;
껍데기파일은 존재
⑧ 껍데기파일 삭제
⑨ 새로운 로그파일 생성
ALTER DATABASE ADD LOGFILE GROUP 3
('C:\APP\ITWILL\ORADATA\TESTDB\REDO03.LOG',
'C:\APP\ITWILL\ORADATA\TESTDB\REDO03B.LOG')
SIZE 50M;
⑩ 그룹1이 CURRENT로 오도록 한바퀴 돌린다
\
3) Current 로그 장애(2가지: Open, Close복구)
[사전작업]
D:\2019년01월30일(log)의 파일을 복구
마지막 아카이크로그파일숫자 기억 : 39
① CURRENT 로그파일 삭제 : REDO01
SHUTDOWN IMMEDIATE → 그룹1 삭제
② STARTUP
MOUNT상태까지만 시작가능하다
③ 오류 발생시 해결 방안
EXIT
SQLPLUS / AS SYSDBA
SHUTDOWN ABORT
④ MOUNT상태까지 시작
STARTUP MOUNT;
SELECT STATUS FROM V$INSTANCE;
③ 현재 로그리스트 확인
ARCHIVE LOG LIST;
④ 복구1 : 사용하지 않은 그룹 UNUSED로 변경
ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 1;
⑤ 복구2 : 파일 이동
위치 : D:\2019년01월30일(log) → C:\app\itwill\oradata\TestDB
DBF파일만 복사해서 TESTDB로 이동
⑥ 복구3 : 아카이브로그 마지막 번호까지만 복구
RECOVER DATABASE UNTIL CANCEL;
⑦ 데이터베이스 시작
ALTER DATABASE OPEN RESETLOGS;
ARCHIVE LOG LIST;
▶ 현재 로그리스트 확인
⑧ 복구확인
@LOG
4)전체삭제(2가지 : 모든 Redolog파일 삭제, 모든 Control파일 삭제)
TRACE파일 수동 생성
ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
▶ CONTROL파일에 있는 내용을 TRACE에 백업
① 사용하는 파일
위치 : C:\app\itwill\diag\rdbms\testdb\testdb\trace
파일명 : testdb_ora_숫자.trc
SET1 : 로그파일 삭제시 필요
SET2 : 컨트롤파일 삭제시 필요
② 로그파일 다 삭제
SHUTDOWN IMMEDIATE → 로그파일 삭제
③ MOUNT상태까지 시작
STARTUP MOUNT
④
ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
⑤ CREATE.SQL 생성
위치 : C:\app\itwill\diag\rdbms\testdb\testdb\trace
파일명 : testdb_ora_숫자.trc
제일 최근의 파일에서 SET1의 부분을 CREATE.SQL파일로 생성
⑥ 없으면 차순으로 찾아서 CREATE.SQL 생성
⑦ @CREATE
⑧ 데이터베이스 시작
ALTER DATABASE OPEN RESETLOGS;
'STUDY > ORACLE' 카테고리의 다른 글
Oracle 17일차(2) - 자바 & 오라클 연동 (1) | 2019.01.30 |
---|---|
Oracle 16일차 -복구(Archive mode):완전복구, 불완전복구 (0) | 2019.01.29 |
Oracle 15일차 (0) | 2019.01.28 |
Oracle 14일차(2)-Store user data, partition (0) | 2019.01.25 |
Oracle 14일차(1)-Segment and space management (0) | 2019.01.25 |
댓글