본문 바로가기

전체 글

(356)
drop table 명령으로 삭제된 Table 복구하기 ★ drop table 명령으로 삭제된 Table 복구하기 Table 생성하기 SQL> create table test01(no number) tablespace test SQL> insert into test01 values(1); SQL> insert into test01 values(2); SQL> insert into test01 values(3); SQL> commit; TO_CHAR(SYSDATE,'YYYY-MM-DD:HH24:MI:SS -------------------------------------- 2012-01-08:00:08:26 SQL> insert into test01 values(4);. SQL> commit; SQL> @tt TO_CHAR(SYSDATE,'YYYY-MM-DD:..
Tablespace 실습 : 백업파일이 없는 경우 복구하기 ★ 장애상황 만들기 SQL> create tablespace haksa @dd TABLESPACE MB FILE_NAME ---------- ---------- -------------------------------------------------- UNDO 10 /home/oracle/oradata/testdb/undo01.dbf HAKSA 10 /home/oracle/oradata/testdb/haksa01.dbf TEST 10 /home/oracle/oradata/testdb/test01.dbf EXAMPLE 100 /home/oracle/oradata/testdb/example01.dbf USERS 5 /home/oracle/oradata/testdb/users01.dbf SYSAUX 250 /..
Offline 안되는 Tablespace 장애 복구하기 ★ 장애상황 만들기~ SQL> select status from v$instance; STATUS ------------------------ OPEN SQL> desc test1 Name Null? Type NO NUMBER SQL> drop table test1 purge; create table test1 (no number) tablespace system; Table created. SQL> insert into test1 values(1); 1 row created. SQL> commit; Commit complete. SQL> @dd TABLESPACE MB FILE_NAME ---------- ---------- -------------------------------------------..
Offline 되는 일반 Tablespace 장애 복구하기 ★ 장애상황 운영중인 DB중 teest01.dbf가 삭제된것을 발견 다행이 백업파일은 존재하며, 현재 DB는 OPEN 상태 DB종료없이 빨리 복구를 해야함. SQL> startup mount ORACLE instance started. Total System Global Area 167772160 bytes Fixed Size 1272600 bytes Variable Size 62915816 bytes Database Buffers 100663296 bytes Redo Buffers 2920448 bytes Database mounted. SQL> alter database archivelog; SQL> archive log list; 장애를 재연하기위해 hot backup 실시 SQL> alter ta..
No archive log mode 에서 장애 해결 ★ 현재 DB를 No archive log mode 로 변경해야 한다. SQL> startup mount ...생략.. SQL> archive log list SQL> alter database noarchivelog; SQL> archive log list; ★ 현재 no archive mode 임으로 열린백업은 받을수 없으므로 shutdown 시킨후 다시 전체백업 받음 SQL> startup SQL> @dd TABLESPACE MB FILE_NAME ---------- ---------- -------------------------------------------------- UNDO 10 /home/oracle/oradata/testdb/undo01.dbf TEST 10 /home/oracle/o..
종합 복구 문제 2 - 백업 파일이 hot backup 일 경우 장애 상황 (2) 데이터파일,리두로그파일,컨트롤파일 들어 있던 스토리지 장애가 발생, 모든파일 전부삭제 과거 백업파일 조사 결과 1주일전에 Hot backup 으로 받아둔 데이터파일이 있고 6개월전에 백업받은 컨트롤파일이 있다. 1주일전에 begin bakup 받았던 파일과 6개월된 control file을 이용하여 DB를 open 시키기!!! 위 메세지는 shutdown abort 로 비정상 종료가 되어 데이터파일끼리 checkpoint 정보가 동기화 되지 않아서 resetlogs 옵션으로 open 을 할수 없으니 복구 하라는 내용이다. 그러나 현재 모든 Redo log file이 삭제가 되었기 때문에 복구를 할수 없는 상황이다 이런경우는 강제로 데이터파일끼리 checkpoint 정보를 동기화 시켜주는..
종합 복구 문제 1 - 백업 파일이 close backup 일 경우 장애 상황 (1) close backup일 경우 고객사이트에서 연락이 옴 현재 상황은 운영중인 서버의 RAID 장애로 모든파일 데이터파일, 리드로그파일, 컨트롤파일 이 소실 됨 현재 가지고 있는 파일은 어제 백업 받았던 전체 데이터 파일과 2개월전에 백업 받았던 컨트롤 파일 밖에 없다. 고객사이트 에서는 어제 까지의 데이터 라도 복구해 달라고 요청, 어제 데이터 파일과 2개월전의 컨트롤 파일만 가지고 어제 상태로 복구하시오. SQL>!cp /data/backup/close/*.ctl /home/oracle/oradata/testdb/ ( 2개월 전에 받았던 ctl 파일을 db에 복사 ) SQL>!cp /data/backup/close/*.dbf /home/oracle/oradata/testdb/ ( 2개..
Control file 관련 장애 (2) 장애유형 3) old control file / controlfile 삭제됨 / incarnation 에러 에러의 원인은 control file 의 체크포인트 정보가 데이터 파일의 체크포인트 정보보다 예전 내용이기 때문이다. old control file 장애 해결방법은 세가지 case 로 구분이 된다. Case 1. 현재 data file, redo log file 에 이상이 없을경우 - 재생성 -noresetlogs로 복구 Case 2. 현재 data file, redo log file 에 이상이 있고 data file 백업 있을 경우 - using backup controlfile Case 3. 현재 data file, redo log file 이상이 있고 data file 백업 없을 경우 - 재생..