9i和10g上rman全備的一點差別
我們知道,9i和10g下,用rman做全庫備份時,rman會把資料檔案、控制檔案、引數檔案等都備份,但是它們還有有差別的,先看看兩者的備份日誌:
--9i的rman全備日誌
E:oracleora92in>rman target /
恢復管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
連線到目標資料庫: SUK (DBID=1788145367)
RMAN> run{
2> allocate channel c1 type disk;
3> backup database format 'f:ackupsuk_%U';
4> sql 'alter system archive log current';
5> release channel c1;
6> }
分配的通道: c1
通道 c1: sid=17 devtype=DISK
啟動 backup 於 22-6月 -07
通道 c1: 正在啟動 full 資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
在備份集中包含當前的 SPFILE --備份引數檔案
備份集中包括當前控制檔案 --備份控制檔案
輸入資料檔案 fno=00014 name=E:ORACLEORADATASUKHEBEI01.DBF
輸入資料檔案 fno=00001 name=E:ORACLEORADATASUKSYSTEM01.DBF
輸入資料檔案 fno=00002 name=E:ORACLEORADATASUKUNDOTBS01.DBF
輸入資料檔案 fno=00006 name=E:ORACLEORADATASUKSUK01.DBF
輸入資料檔案 fno=00007 name=E:ORACLEORADATASUKSUK02.DBF
輸入資料檔案 fno=00008 name=E:ORACLEORADATASUKSUK03.DBF
輸入資料檔案 fno=00003 name=E:ORACLEORADATASUKINDX01.DBF
輸入資料檔案 fno=00005 name=E:ORACLEORADATASUKUSERS01.DBF
輸入資料檔案 fno=00004 name=E:ORACLEORADATASUKTOOLS01.DBF
輸入資料檔案 fno=00009 name=E:ORACLEORADATASUKIND01.DBF
輸入資料檔案 fno=00010 name=E:ORACLEORADATASUKIND02.DBF
輸入資料檔案 fno=00011 name=E:ORACLEORADATASUKIND03.DBF
輸入資料檔案 fno=00012 name=E:ORACLEORADATASUKNEWUNDO01.DBF
輸入資料檔案 fno=00013 name=E:ORACLEORADATASUKNEWUNDO02.DBF
通道 c1: 正在啟動段 1 於 22-6月 -07
通道 c1: 已完成段 1 於 22-6月 -07
段 handle=F:BACKUPSUK_07IKTQ6C_1_1 comment=NONE
通道 c1: 備份集已完成, 經過時間:00:02:27
完成 backup 於 22-6月 -07
sql 語句: alter system archive log current
釋放的通道: c1
--可以看到,9i下,rman全備時是先備份引數檔案、控制檔案,再備份資料檔案。
由於備份資訊是放在控制檔案中的,所以當次備份的控制檔案是不包含當次的備份資訊的(用include current controlfile也一樣).
在恢復時如果用備份的控制檔案恢復,很可能遇到錯誤:
RMAN> restore database;
啟動 restore 於 22-6月 -07
使用通道 ORA_DISK_1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 06/22/2007 13:27:03
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 14 found to restore
RMAN-06023: no backup or copy of datafile 13 found to restore
RMAN-06023: no backup or copy of datafile 12 found to restore
RMAN-06023: no backup or copy of datafile 11 found to restore
RMAN-06023: no backup or copy of datafile 10 found to restore
RMAN-06023: no backup or copy of datafile 9 found to restore
RMAN-06023: no backup or copy of datafile 8 found to restore
RMAN-06023: no backup or copy of datafile 7 found to restore
RMAN-06023: no backup or copy of datafile 6 found to restore
RMAN-06023: no backup or copy of datafile 5 found to restore
RMAN-06023: no backup or copy of datafile 4 found to restore
RMAN-06023: no backup or copy of datafile 3 found to restore
RMAN-06023: no backup or copy of datafile 2 found to restore
RMAN-06023: no backup or copy of datafile 1 found to restore
--10g的rman全備日誌
C:>rman target /
恢復管理器: Release 10.2.0.1.0 - Production on 星期二 6月 19 10:50:18 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連線到目標資料庫: ORA10G (DBID=3939087858)
RMAN> run{
2> allocate channel c1 type disk;
3> backup database format 'f:ackupsuk_%U';
4> sql 'alter system archive log current';
5> release channel c1;
6> }
分配的通道: c1
通道 c1: sid=145 devtype=DISK
啟動 backup 於 22-6月 -07
通道 c1: 啟動全部資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
輸入資料檔案 fno=00006 name=E:ORACLEORADATAORA10GHEBEI01.DBF
輸入資料檔案 fno=00005 name=E:ORACLEORADATAORA10GSUK01.DBF
輸入資料檔案 fno=00001 name=E:ORACLEORADATAORA10GSYSTEM01.DBF
輸入資料檔案 fno=00003 name=E:ORACLEORADATAORA10GSYSAUX01.DBF
輸入資料檔案 fno=00002 name=E:ORACLEORADATAORA10GUNDOTBS01.DBF
輸入資料檔案 fno=00004 name=E:ORACLEORADATAORA10GUSERS01.DBF
通道 c1: 正在啟動段 1 於 22-6月 -07
通道 c1: 已完成段 1 於 22-6月 -07
段控制程式碼=F:BACKUPSUK_05IKTQ08_1_1 標記=TAG20070622T125639 註釋=NONE
通道 c1: 備份集已完成, 經過時間:00:01:26
通道 c1: 啟動全部資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
備份集中包括當前控制檔案
在備份集中包含當前的 SPFILE
通道 c1: 正在啟動段 1 於 22-6月 -07
通道 c1: 已完成段 1 於 22-6月 -07
段控制程式碼=F:BACKUPSUK_06IKTQ2U_1_1 標記=TAG20070622T125639 註釋=NONE
通道 c1: 備份集已完成, 經過時間:00:00:05
完成 backup 於 22-6月 -07
sql 語句: alter system archive log current
釋放的通道: c1
可以看出,10g下全庫備份的備份順序與9i是相反的,它先備份資料檔案,再備份控制檔案、引數檔案。
oracle已經意識到9i的這個不足,在10g中修復了。
在9i中,應該設定控制檔案欄位備份來避免上述問題。
E:oracleora92in>rman target /
恢復管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
連線到目標資料庫: SUK (DBID=1788145367)
RMAN> run{
2> allocate channel c1 type disk;
3> CONFIGURE CONTROLFILE AUTOBACKUP ON;
4> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'f:ackupc
n_%F';
5> backup database format 'f:ackupsuk_%U';
6> sql 'alter system archive log current';
7> release channel c1;
8> }
正在使用目標資料庫控制檔案替代恢復目錄
分配的通道: c1
通道 c1: sid=12 devtype=DISK
新的 RMAN 配置引數:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
已成功儲存新的 RMAN 配置引數
新的 RMAN 配置引數:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'f:ackupcn_%F
';
已成功儲存新的 RMAN 配置引數
啟動 backup 於 22-6月 -07
通道 c1: 正在啟動 full 資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
輸入資料檔案 fno=00014 name=E:ORACLEORADATASUKHEBEI01.DBF
輸入資料檔案 fno=00001 name=E:ORACLEORADATASUKSYSTEM01.DBF
輸入資料檔案 fno=00002 name=E:ORACLEORADATASUKUNDOTBS01.DBF
輸入資料檔案 fno=00006 name=E:ORACLEORADATASUKSUK01.DBF
輸入資料檔案 fno=00007 name=E:ORACLEORADATASUKSUK02.DBF
輸入資料檔案 fno=00008 name=E:ORACLEORADATASUKSUK03.DBF
輸入資料檔案 fno=00003 name=E:ORACLEORADATASUKINDX01.DBF
輸入資料檔案 fno=00005 name=E:ORACLEORADATASUKUSERS01.DBF
輸入資料檔案 fno=00004 name=E:ORACLEORADATASUKTOOLS01.DBF
輸入資料檔案 fno=00009 name=E:ORACLEORADATASUKIND01.DBF
輸入資料檔案 fno=00010 name=E:ORACLEORADATASUKIND02.DBF
輸入資料檔案 fno=00011 name=E:ORACLEORADATASUKIND03.DBF
輸入資料檔案 fno=00012 name=E:ORACLEORADATASUKNEWUNDO01.DBF
輸入資料檔案 fno=00013 name=E:ORACLEORADATASUKNEWUNDO02.DBF
通道 c1: 正在啟動段 1 於 22-6月 -07
通道 c1: 已完成段 1 於 22-6月 -07
段 handle=F:BACKUPSUK_01IKTVM1_1_1 comment=NONE
通道 c1: 備份集已完成, 經過時間:00:01:55
完成 backup 於 22-6月 -07
啟動 Control File and SPFILE Autobackup 於 22-6月 -07
段 handle=F:BACKUPCN_C-1788145367-20070622-00 comment=NONE
完成 Control File and SPFILE Autobackup 於 22-6月 -07
sql 語句: alter system archive log current
釋放的通道: c1
--9i的rman全備日誌
E:oracleora92in>rman target /
恢復管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
連線到目標資料庫: SUK (DBID=1788145367)
RMAN> run{
2> allocate channel c1 type disk;
3> backup database format 'f:ackupsuk_%U';
4> sql 'alter system archive log current';
5> release channel c1;
6> }
分配的通道: c1
通道 c1: sid=17 devtype=DISK
啟動 backup 於 22-6月 -07
通道 c1: 正在啟動 full 資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
在備份集中包含當前的 SPFILE --備份引數檔案
備份集中包括當前控制檔案 --備份控制檔案
輸入資料檔案 fno=00014 name=E:ORACLEORADATASUKHEBEI01.DBF
輸入資料檔案 fno=00001 name=E:ORACLEORADATASUKSYSTEM01.DBF
輸入資料檔案 fno=00002 name=E:ORACLEORADATASUKUNDOTBS01.DBF
輸入資料檔案 fno=00006 name=E:ORACLEORADATASUKSUK01.DBF
輸入資料檔案 fno=00007 name=E:ORACLEORADATASUKSUK02.DBF
輸入資料檔案 fno=00008 name=E:ORACLEORADATASUKSUK03.DBF
輸入資料檔案 fno=00003 name=E:ORACLEORADATASUKINDX01.DBF
輸入資料檔案 fno=00005 name=E:ORACLEORADATASUKUSERS01.DBF
輸入資料檔案 fno=00004 name=E:ORACLEORADATASUKTOOLS01.DBF
輸入資料檔案 fno=00009 name=E:ORACLEORADATASUKIND01.DBF
輸入資料檔案 fno=00010 name=E:ORACLEORADATASUKIND02.DBF
輸入資料檔案 fno=00011 name=E:ORACLEORADATASUKIND03.DBF
輸入資料檔案 fno=00012 name=E:ORACLEORADATASUKNEWUNDO01.DBF
輸入資料檔案 fno=00013 name=E:ORACLEORADATASUKNEWUNDO02.DBF
通道 c1: 正在啟動段 1 於 22-6月 -07
通道 c1: 已完成段 1 於 22-6月 -07
段 handle=F:BACKUPSUK_07IKTQ6C_1_1 comment=NONE
通道 c1: 備份集已完成, 經過時間:00:02:27
完成 backup 於 22-6月 -07
sql 語句: alter system archive log current
釋放的通道: c1
--可以看到,9i下,rman全備時是先備份引數檔案、控制檔案,再備份資料檔案。
由於備份資訊是放在控制檔案中的,所以當次備份的控制檔案是不包含當次的備份資訊的(用include current controlfile也一樣).
在恢復時如果用備份的控制檔案恢復,很可能遇到錯誤:
RMAN> restore database;
啟動 restore 於 22-6月 -07
使用通道 ORA_DISK_1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 06/22/2007 13:27:03
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 14 found to restore
RMAN-06023: no backup or copy of datafile 13 found to restore
RMAN-06023: no backup or copy of datafile 12 found to restore
RMAN-06023: no backup or copy of datafile 11 found to restore
RMAN-06023: no backup or copy of datafile 10 found to restore
RMAN-06023: no backup or copy of datafile 9 found to restore
RMAN-06023: no backup or copy of datafile 8 found to restore
RMAN-06023: no backup or copy of datafile 7 found to restore
RMAN-06023: no backup or copy of datafile 6 found to restore
RMAN-06023: no backup or copy of datafile 5 found to restore
RMAN-06023: no backup or copy of datafile 4 found to restore
RMAN-06023: no backup or copy of datafile 3 found to restore
RMAN-06023: no backup or copy of datafile 2 found to restore
RMAN-06023: no backup or copy of datafile 1 found to restore
--10g的rman全備日誌
C:>rman target /
恢復管理器: Release 10.2.0.1.0 - Production on 星期二 6月 19 10:50:18 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連線到目標資料庫: ORA10G (DBID=3939087858)
RMAN> run{
2> allocate channel c1 type disk;
3> backup database format 'f:ackupsuk_%U';
4> sql 'alter system archive log current';
5> release channel c1;
6> }
分配的通道: c1
通道 c1: sid=145 devtype=DISK
啟動 backup 於 22-6月 -07
通道 c1: 啟動全部資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
輸入資料檔案 fno=00006 name=E:ORACLEORADATAORA10GHEBEI01.DBF
輸入資料檔案 fno=00005 name=E:ORACLEORADATAORA10GSUK01.DBF
輸入資料檔案 fno=00001 name=E:ORACLEORADATAORA10GSYSTEM01.DBF
輸入資料檔案 fno=00003 name=E:ORACLEORADATAORA10GSYSAUX01.DBF
輸入資料檔案 fno=00002 name=E:ORACLEORADATAORA10GUNDOTBS01.DBF
輸入資料檔案 fno=00004 name=E:ORACLEORADATAORA10GUSERS01.DBF
通道 c1: 正在啟動段 1 於 22-6月 -07
通道 c1: 已完成段 1 於 22-6月 -07
段控制程式碼=F:BACKUPSUK_05IKTQ08_1_1 標記=TAG20070622T125639 註釋=NONE
通道 c1: 備份集已完成, 經過時間:00:01:26
通道 c1: 啟動全部資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
備份集中包括當前控制檔案
在備份集中包含當前的 SPFILE
通道 c1: 正在啟動段 1 於 22-6月 -07
通道 c1: 已完成段 1 於 22-6月 -07
段控制程式碼=F:BACKUPSUK_06IKTQ2U_1_1 標記=TAG20070622T125639 註釋=NONE
通道 c1: 備份集已完成, 經過時間:00:00:05
完成 backup 於 22-6月 -07
sql 語句: alter system archive log current
釋放的通道: c1
可以看出,10g下全庫備份的備份順序與9i是相反的,它先備份資料檔案,再備份控制檔案、引數檔案。
oracle已經意識到9i的這個不足,在10g中修復了。
在9i中,應該設定控制檔案欄位備份來避免上述問題。
E:oracleora92in>rman target /
恢復管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
連線到目標資料庫: SUK (DBID=1788145367)
RMAN> run{
2> allocate channel c1 type disk;
3> CONFIGURE CONTROLFILE AUTOBACKUP ON;
4> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'f:ackupc
n_%F';
5> backup database format 'f:ackupsuk_%U';
6> sql 'alter system archive log current';
7> release channel c1;
8> }
正在使用目標資料庫控制檔案替代恢復目錄
分配的通道: c1
通道 c1: sid=12 devtype=DISK
新的 RMAN 配置引數:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
已成功儲存新的 RMAN 配置引數
新的 RMAN 配置引數:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'f:ackupcn_%F
';
已成功儲存新的 RMAN 配置引數
啟動 backup 於 22-6月 -07
通道 c1: 正在啟動 full 資料檔案備份集
通道 c1: 正在指定備份集中的資料檔案
輸入資料檔案 fno=00014 name=E:ORACLEORADATASUKHEBEI01.DBF
輸入資料檔案 fno=00001 name=E:ORACLEORADATASUKSYSTEM01.DBF
輸入資料檔案 fno=00002 name=E:ORACLEORADATASUKUNDOTBS01.DBF
輸入資料檔案 fno=00006 name=E:ORACLEORADATASUKSUK01.DBF
輸入資料檔案 fno=00007 name=E:ORACLEORADATASUKSUK02.DBF
輸入資料檔案 fno=00008 name=E:ORACLEORADATASUKSUK03.DBF
輸入資料檔案 fno=00003 name=E:ORACLEORADATASUKINDX01.DBF
輸入資料檔案 fno=00005 name=E:ORACLEORADATASUKUSERS01.DBF
輸入資料檔案 fno=00004 name=E:ORACLEORADATASUKTOOLS01.DBF
輸入資料檔案 fno=00009 name=E:ORACLEORADATASUKIND01.DBF
輸入資料檔案 fno=00010 name=E:ORACLEORADATASUKIND02.DBF
輸入資料檔案 fno=00011 name=E:ORACLEORADATASUKIND03.DBF
輸入資料檔案 fno=00012 name=E:ORACLEORADATASUKNEWUNDO01.DBF
輸入資料檔案 fno=00013 name=E:ORACLEORADATASUKNEWUNDO02.DBF
通道 c1: 正在啟動段 1 於 22-6月 -07
通道 c1: 已完成段 1 於 22-6月 -07
段 handle=F:BACKUPSUK_01IKTVM1_1_1 comment=NONE
通道 c1: 備份集已完成, 經過時間:00:01:55
完成 backup 於 22-6月 -07
啟動 Control File and SPFILE Autobackup 於 22-6月 -07
段 handle=F:BACKUPCN_C-1788145367-20070622-00 comment=NONE
完成 Control File and SPFILE Autobackup 於 22-6月 -07
sql 語句: alter system archive log current
釋放的通道: c1
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/231499/viewspace-63823/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- firefox和IE在一個逗號上的差別Firefox
- 榮耀Play和榮耀9i區別對比 差價600榮耀Play和榮耀9i哪個好?
- 【RMAN】RMAN的備份保留策略
- 【RMAN】RMAN備份至ASMASM
- RMAN備份的最佳化和調整
- RMAN的備份原理
- Oracle9i RMAN 的優缺點及RMAN 備份及恢復步驟Oracle
- Oracle Rman Catalog的建立方法和備份原理Oracle
- Dynamics 365 Online和On-premises在開發方式上的差別REM
- RMAN備份概述
- RMAN備份整庫和歸檔日誌的方法
- 【RMAN】在備庫執行rman備份時報錯RMAN-06820 ORA-17629
- 12 使用RMAN備份和恢復檔案
- RMAN 備份相關的概念
- RMAN備份恢復典型案例——RMAN備份&系統變慢
- RMAN備份進度
- rman 備份指令碼指令碼
- Day6 差分和樹上差分
- 分享Oracle Rman的備份指令碼Oracle指令碼
- RMAN加密備份的三種方式加密
- rman如何在備庫執行一致性備份
- python中分辨int和float的差別Python
- 線上json差異比較工具--遞迴比較兩個json的節點和值的差異,並支援差異數預覽和逐個檢視差異JSON遞迴
- Oracle 9i, 10g, and 11g RAC on Linux所需要的Hangcheck-Timer Module介紹OracleLinuxGC
- 在DG備庫備份資料庫並恢復到一個主機上,報錯RMAN-06820資料庫
- RMAN備份恢復技巧
- 【rman備份策略】實驗
- Oracle RMAN備份實戰Oracle
- Oracle OCP(60):RMAN 備份Oracle
- rman 增量備份恢復
- 【RMAN】在多租戶環境下的RMAN備份及恢復
- RMAN-06207和RMAN-06208的處理
- Oracle 11G RAC複製備庫RMAN-03002 RMAN-05501 RMAN-03015 RMAN-03009 RMAN-10038Oracle
- [20211020]改變備庫的rman配置.txt
- 樹上字首和與差分
- 小程式和APP的差別是什麼?APP
- @Component和@Configuration作為配置類的差別
- mysql 的myisam和innodb對應的cache管理方式的一點差異MySql