1. 程式人生 > >ORA-01152: 檔案 1 沒有從過舊的備份中還原

ORA-01152: 檔案 1 沒有從過舊的備份中還原

轉自:http://blog.itpub.net/8520577/viewspace-1255794/

做了一個全備


RMAN> show all;


使用目標資料庫控制檔案替代恢復目錄
db_unique_name 為 ORADATA 的資料庫的 RMAN 配置引數為:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOA
D TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:\ORACLE\PRODUCT\11.2.0\DBHOME_1\DATABA
SE\SNCFORADATA.ORA'; # default

RMAN> backup database;


啟動 backup 於 22-8月 -14
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=194 裝置型別=DISK
通道 ORA_DISK_1: 正在啟動全部資料檔案備份集
通道 ORA_DISK_1: 正在指定備份集內的資料檔案
輸入資料檔案: 檔案號=00008 名稱=E:\H2DATA\H2_BUSI.DBF
輸入資料檔案: 檔案號=00001 名稱=D:\ORACLE\ORADATA\ORADATA\SYSTEM01.DBF
輸入資料檔案: 檔案號=00002 名稱=D:\ORACLE\ORADATA\ORADATA\SYSAUX01.DBF
輸入資料檔案: 檔案號=00009 名稱=E:\H2DATA\H2_BUSI_INDX.DBF
輸入資料檔案: 檔案號=00015 名稱=D:\ORACLE\ORADATA\ORADATA\UNDOTBS02.DBF
輸入資料檔案: 檔案號=00006 名稱=E:\H2DATA\H2DB.DBF
輸入資料檔案: 檔案號=00005 名稱=D:\ORACLE\ORADATA\ORADATA\EXAMPLE01.DBF
輸入資料檔案: 檔案號=00007 名稱=E:\H2DATA\H2DB_INDEX.DBF
輸入資料檔案: 檔案號=00010 名稱=E:\H2DATA\H2_TEST.DBF
輸入資料檔案: 檔案號=00011 名稱=E:\H2DATA\H2_TEST_INDX.DBF
輸入資料檔案: 檔案號=00012 名稱=E:\H2DATA\H2_LOG.DBF
輸入資料檔案: 檔案號=00013 名稱=E:\H2DATA\H2_LOG_INDX.DBF
輸入資料檔案: 檔案號=00004 名稱=D:\ORACLE\ORADATA\ORADATA\USERS01.DBF
輸入資料檔案: 檔案號=00014 名稱=E:\DATA\ORADATA\TEST.DBF
通道 ORA_DISK_1: 正在啟動段 1 於 22-8月 -14
通道 ORA_DISK_1: 已完成段 1 於 22-8月 -14
段控制代碼=E:\ORADATA\FAST_RECOVERY_AREA\ORADATA\BACKUPSET\2014_08_22\O1_MF_NNNDF_TA
G20140822T095727_9ZF8W8W8_.BKP 標記=TAG20140822T095727 註釋=NONE
通道 ORA_DISK_1: 備份集已完成, 經過時間:00:06:45
完成 backup 於 22-8月 -14


啟動 Control File and SPFILE Autobackup 於 22-8月 -14
段 handle=E:\ORADATA\FAST_RECOVERY_AREA\ORADATA\AUTOBACKUP\2014_08_22\O1_MF_S_85
6260254_9ZF98Z60_.BKP comment=NONE
完成 Control File and SPFILE Autobackup 於 22-8月 -14


關閉資料庫.將兩個控制檔案都剪下到其他目錄。
此時啟動資料庫



通過RMAN恢復控制檔案


恢復控制檔案之後將資料庫啟動至mount狀態

SQL> startup mount
ORACLE 例程已經啟動。


Total System Global Area 1068937216 bytes
Fixed Size                  2182592 bytes
Variable Size             746586688 bytes
Database Buffers          314572800 bytes
Redo Buffers                5595136 bytes
資料庫裝載完畢。
SQL>



開啟資料庫時出錯:
alter database open resetlogs
*
第 1 行出現錯誤:
ORA-01152: 檔案 1 沒有從過舊的備份中還原
ORA-01110: 資料檔案 1: 'D:\ORACLE\ORADATA\ORADATA\SYSTEM01.DBF'

使用:
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 29945834 (在 08/22/2014 09:57:28 生成) 對於執行緒 1 是必需的
ORA-00289: 建議:
E:\ORADATA\FAST_RECOVERY_AREA\ORADATA\ARCHIVELOG\2014_08_22\O1_MF_1_217_%U_.ARC
ORA-00280: 更改 29945834 (用於執行緒 1) 在序列 #217 中


至此資料庫已經開啟



指定日誌: {=suggested | filename | AUTO | CANCEL}
AUTO
ORA-00308: 無法開啟歸檔日誌
'E:\ORADATA\FAST_RECOVERY_AREA\ORADATA\ARCHIVELOG\2014_08_22\O1_MF_1_217_%U_.ARC


'
ORA-27041: 無法開啟檔案
OSD-04002: 無法開啟檔案
O/S-Error: (OS 2) 系統找不到指定的檔案。




ORA-00308: 無法開啟歸檔日誌
'E:\ORADATA\FAST_RECOVERY_AREA\ORADATA\ARCHIVELOG\2014_08_22\O1_MF_1_217_%U_.ARC


'
ORA-27041: 無法開啟檔案
OSD-04002: 無法開啟檔案
O/S-Error: (OS 2) 系統找不到指定的檔案。




SQL> alter database open resetlogs;


資料庫已更改。