Complete Recovery – 백업 받지 않은 데이터파일 복구(2)
------------------------------------------------
환경 : Oracle 9.2 윈도우
데이터파일 위치 : c:\oracle oradata\wink
아카이브 로그 폴더 : C:\oracle\ora92\database\archive
------------------------------------------------
테이블스페이스가 만들어 진 후 데이터파일이 한번도 백업 되지 않았을 때 이를 복구하는 예제 입니다.
==================================================================
1. JCLEE 라는 이름으로 새로운 테이블스페이스를 생성하고 실습을 위한 jclee라는 계정도 만듦
SQL> create tablespace jclee
2 datafile 'c:\oracle\oradata\wink\jclee01.dbf' size 5m;
Tablespace created.
SQL> create user jclee identified by jclee
2 default tablespace jclee
3 temporary tablespace temp;
User created.
SQL> grant connect, resource to jclee;
Grant succeeded.
SQL> conn jclee/jclee
Connected.
SQL> create table test (
2 a number(6)
3 );
Table created.
SQL> insert into test (a) values (10);
1 row created.
SQL> commit;
Commit complete.
SQL> conn / as sysdba
Connected.
SQL> alter system switch logfile;
System altered.
2. 사고를 칩니다. ^^
SQL> host del c:\oracle\oradata\wink\jclee01.dbf
다른 프로세스가 파일을 사용 중이기 때문에 프로세스가 액세스 할 수 없습니다.
SQL> alter tablespace jclee offline;
Tablespace altered.
SQL> host c:\oracle\oradata\wink\jclee01.dbf
SQL> host del c:\oracle\oradata\wink\jclee01.dbf
3. 장애 파일이 있는 테이블스페이스를 offline으로 변경하고 데이터파일 재생성
SQL> -- 위에서 파일을 삭제하기 위해 이미 오프라인으로 변경했으므로
SQL> -- 이 과정은 생략하고 데이터 파일만 재생성 합니다.
SQL> col error format a15
SQL> select * from v$recover_file;
FILE# ONLINE ONLINE_ ERROR CHANGE# TIME
---------- ------- ------- --------------- ---------- ---------
15 OFFLINE OFFLINE OFFLINE NORMAL 0
SQL> alter database create datafile
2 'c:\oracle\oradata\wink\jclee01.dbf'
3 as 'c:\oracle\oradata\wink\jclee01.dbf';
Database altered.
4. recover 명령으로 복구
SQL> recover tablespace jclee;
Media recovery complete.
5. 복구 상태를 확인
SQL> alter tablespace jclee online;
Tablespace altered.
SQL> select * from v$recover_file;
no rows selected
SQL> conn jclee/jclee
Connected.
SQL> select * from test;
A
----------
10
------------------------------------------------
환경 : Oracle 9.2 윈도우
데이터파일 위치 : c:\oracle oradata\wink
아카이브 로그 폴더 : C:\oracle\ora92\database\archive
------------------------------------------------
테이블스페이스가 만들어 진 후 데이터파일이 한번도 백업 되지 않았을 때 이를 복구하는 예제 입니다.
==================================================================
1. JCLEE 라는 이름으로 새로운 테이블스페이스를 생성하고 실습을 위한 jclee라는 계정도 만듦
SQL> create tablespace jclee
2 datafile 'c:\oracle\oradata\wink\jclee01.dbf' size 5m;
Tablespace created.
SQL> create user jclee identified by jclee
2 default tablespace jclee
3 temporary tablespace temp;
User created.
SQL> grant connect, resource to jclee;
Grant succeeded.
SQL> conn jclee/jclee
Connected.
SQL> create table test (
2 a number(6)
3 );
Table created.
SQL> insert into test (a) values (10);
1 row created.
SQL> commit;
Commit complete.
SQL> conn / as sysdba
Connected.
SQL> alter system switch logfile;
System altered.
2. 사고를 칩니다. ^^
SQL> host del c:\oracle\oradata\wink\jclee01.dbf
다른 프로세스가 파일을 사용 중이기 때문에 프로세스가 액세스 할 수 없습니다.
SQL> alter tablespace jclee offline;
Tablespace altered.
SQL> host c:\oracle\oradata\wink\jclee01.dbf
SQL> host del c:\oracle\oradata\wink\jclee01.dbf
3. 장애 파일이 있는 테이블스페이스를 offline으로 변경하고 데이터파일 재생성
SQL> -- 위에서 파일을 삭제하기 위해 이미 오프라인으로 변경했으므로
SQL> -- 이 과정은 생략하고 데이터 파일만 재생성 합니다.
SQL> col error format a15
SQL> select * from v$recover_file;
FILE# ONLINE ONLINE_ ERROR CHANGE# TIME
---------- ------- ------- --------------- ---------- ---------
15 OFFLINE OFFLINE OFFLINE NORMAL 0
SQL> alter database create datafile
2 'c:\oracle\oradata\wink\jclee01.dbf'
3 as 'c:\oracle\oradata\wink\jclee01.dbf';
Database altered.
4. recover 명령으로 복구
SQL> recover tablespace jclee;
Media recovery complete.
5. 복구 상태를 확인
SQL> alter tablespace jclee online;
Tablespace altered.
SQL> select * from v$recover_file;
no rows selected
SQL> conn jclee/jclee
Connected.
SQL> select * from test;
A
----------
10
![]() | ![]() ![]() | 12-27 | 2089 | |
![]() | ![]() ![]() | 12-11 | 1518 | |
53 | ![]() ![]() | 03-15 | 1283 | |
52 | ![]() ![]() | 01-31 | 1426 | |
51 | ![]() ![]() | 01-31 | 1361 | |
50 | ![]() ![]() | 01-31 | 1115 | |
49 | ![]() ![]() | 01-19 | 1436 | |
48 | ![]() ![]() | 01-11 | 1262 | |
47 | ![]() ![]() | 01-03 | 1760 | |
46 | ![]() ![]() | 12-27 | 2089 | |
45 | ![]() ![]() | 12-19 | 1521 | |
44 | ![]() ![]() | 12-14 | 1499 | |
43 | ![]() ![]() | 12-11 | 1518 | |
42 | ![]() ![]() | 12-09 | 1206 | |
41 | ![]() ![]() | 12-01 | 1428 | |
40 | ![]() ![]() | 12-01 | 1576 | |
39 | ![]() ![]() | 12-01 | 1084 |
댓글 없음:
댓글 쓰기