반응형
Partition table 복원 작업내용 (동일 장비에서 다른 SID로 복원하기)
1) Recovery에 필요한 파일 Copy
이전의 백업 데이터파일 중 SYSTEM, UNDO, TS_PT_30(해당 테이블이 포함된 테이블
스페이스)의 Datafile, 오라클 환경 설정 파일만 임시 디렉토리로 복원한다
l Recovery에 필요한 Tablespace
TS_PT_30
SYSTEM
UNDOTBS1
l 필요한 Oracle 파일
initRECOVER.ora (initTEST.ora 복사)
orapwRECOVER (orapwTEST password file 복사)
2) 환경에 맞게 initSID.ora 파일 수정
l Archive를 적용하지 않기 때문에 Archive 관련 파라미터는 주석처리 한다.
- LOG_ARCHIVE_DEST, LOG_ARCHIVE_START 주석 처리
l Cold Backup 본이 아닌 Hot Backup 본으로 비정상적인 Open 이므로
_OFFLINE_ROLLBACK_SEGMENTS, _CORRUPTED_ROLLBACK_SEGMENTS
_ALLOW_RESETLOGS_CORRUPTION를 세팅한다.
l _OFFLINE_ROLLBACK_SEGMENTS, _CORRUPTED_ROLLBACK_SEGMENTS 관련
Parameter를 세팅 하므로 Undo Tablespace 관련 Parameter를 주석처리 한다.
- undo_management='MANUAL'로 세팅한다.
initRECOVER.ora (기존 initTEST.ora 수정)
============================================================
background_dump_dest='/oracle9/app/oracle/admin/RECOVER/bdump'
*.compatible='9.2.0'
control_files='/home/oracle/control01.ctl'
core_dump_dest='/oracle9/app/oracle/admin/RECOVER/cdump'
*.db_block_size=8192
*.db_cache_size=1073741824
*.db_name='RECOVER'
*.java_pool_size=0
*.job_queue_processes=2
*.large_pool_size=41943040
# LOG_ARCHIVE_DEST='/arch'
# LOG_ARCHIVE_FORMAT='arcTEST_%s.arc'
# LOG_ARCHIVE_START=TRUE
*.open_cursors=500
*.pga_aggregate_target=1073741824
*.processes=500
*.query_rewrite_enabled='true'
*.service_names='RECOVER'
*.shared_pool_size=629145600
*.star_transformation_enabled='FALSE'
undo_management='MANUAL'
user_dump_dest='/oracle9/app/oracle/admin/RECOVER/udump'
*._OFFLINE_ROLLBACK_SEGMENTS=(_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$,_SYSSMU11$,_SYSSMU1
2$,_SYSSMU13$,_SYSSMU14$,_SYSSMU15$,_SYSSMU16$,_SYSSMU17$,_SYSSMU18$,_SYSSMU19$,_SYSSMU20$,_SYSSMU21$,_SYSSMU22$,_SYSSMU23$,_SYSSMU24$,_SYSSMU25$,_SYS
SMU26$,_SYSSMU27$,_SYSSMU28$,_SYSSMU29$,_SYSSMU30$,_SYSSMU31$,_SYSSMU32$,_SYSSMU33$,_SYSSMU34$,_SYSSMU35$,_SYSSMU36$,_SYSSMU37$,_SYSSMU38$,_SYSSMU39$,
_SYSSMU40$,_SYSSMU41$,_SYSSMU42$,_SYSSMU43$,_SYSSMU44$,_SYSSMU45$,_SYSSMU46$,_SYSSMU47$,_SYSSMU48$,_SYSSMU49$,_SYSSMU50$,_SYSSMU51$,_SYSSMU52$,_SYSSMU
53$,_SYSSMU54$,_SYSSMU55$,_SYSSMU56$,_SYSSMU57$,_SYSSMU58$,_SYSSMU59$)
*._CORRUPTED_ROLLBACK_SEGMENTS=(_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$,_SYSSMU11$,_SYSSM
U12$,_SYSSMU13$,_SYSSMU14$,_SYSSMU15$,_SYSSMU16$,_SYSSMU17$,_SYSSMU18$,_SYSSMU19$,_SYSSMU20$,_SYSSMU21$,_SYSSMU22$,_SYSSMU23$,_SYSSMU24$,_SYSSMU25$,_S
YSSMU26$,_SYSSMU27$,_SYSSMU28$,_SYSSMU29$,_SYSSMU30$,_SYSSMU31$,_SYSSMU32$,_SYSSMU33$,_SYSSMU34$,_SYSSMU35$,_SYSSMU36$,_SYSSMU37$,_SYSSMU38$,_SYSSMU39
$,_SYSSMU40$,_SYSSMU41$,_SYSSMU42$,_SYSSMU43$,_SYSSMU44$,_SYSSMU45$,_SYSSMU46$,_SYSSMU47$,_SYSSMU48$,_SYSSMU49$,_SYSSMU50$,_SYSSMU51$,_SYSSMU52$,_SYSS
MU53$,_SYSSMU54$,_SYSSMU55$,_SYSSMU56$,_SYSSMU57$,_SYSSMU58$,_SYSSMU59$)
*._ALLOW_RESETLOGS_CORRUPTION=TRUE
3) 강제로 DB OPEN
[oracle:/oracle9/app/oracle/product/9.2.0/dbs]echo $ORACLE_SID
TEST
[oracle:/oracle9/app/oracle/product/9.2.0/dbs]export ORACLE_SID=RECOVER
[oracle:/oracle9/app/oracle/product/9.2.0/dbs]echo $ORACLE_SID
RECOVER
[oracle:/oracle9/app/oracle/product/9.2.0/dbs]sqlplus "/as sysdba"
SQL*Plus: Release 9.2.0.8.0 - Production on Wed Oct 1
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORACLE instance started.
Total System Global Area 1985971832 bytes
Fixed Size 743032 bytes
Variable Size 754974720 bytes
Database Buffers 1224736768 bytes
Redo Buffers 5517312 bytes
Database mounted.
SQL> CREATE CONTROLFILE SET DATABASE "RECOVER" RESETLOGS NOARCHIVELOG
MAXLOGFILES 64 MAXLOGMEMBERS 3 MAXDATAFILES 2000 MAXINSTANCES 1 MAXLOGHISTORY 17697 LOGFILE GROUP 1 ('/imsi/Oracle/redo01.log') SIZE 30M, GROUP 2 ('/imsi/Oracle/redo02.log') SIZE 30M, GROUP 3 ('/imsi/Oracle/redo03.log') SIZE 30M, GROUP 4 ('/imsi/Oracle/redo04.log') SIZE 30M -- STANDBY LOGFILE DATAFILE '/dev/rsystem', '/dev/rundo_01', '/dev/rundo_02', '/dev/rrec_01', '/dev/rrec_02', '/dev/rrec_03' CHARACTER SET KO16KSC5601 ;
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
ß 비정상 적인 불완전 복원 이기 때문에 Resetlogs로 Open해야 한다.
SQL> alter database open resetlogs;
Database altered.
4) 복원된 table의 Export & Import 수행을 한다.
[oracle:/temp]exp scott/oracle file=exp1001.dmp tables=TBPT:PT_200910 log=exp1001.log
|
|
반응형
'ORACLE > Backup & Recovery' 카테고리의 다른 글
oracle SCN이 틀렸을 경우에 복구하는 방법인데요 (0) | 2010.03.19 |
---|---|
Clone DB Creation with Hot Backup on HP-UX oracle10g (ProDBA) (0) | 2009.10.19 |
begin backup Mode 확인하기 (0) | 2008.06.19 |
[Unix] 초간단 오라클 백업 스크립트 DB_Oracle (0) | 2008.03.14 |
RMAN versus EXPORT Incremental backups (0) | 2008.03.05 |