第二章(backup and recovery 筆記)

to_be_Dba發表於2013-02-18

第二章簡記:
rman環境包括目標資料庫、rman客戶端,還可能用到fast recovery area(快速恢復區)、media manager、recovery catalog

快速恢復區使用db_recovery_file_dest和db_recovery_file_size引數來設定。
媒體管理器控制在備份恢復中的磁碟,管理載入、標籤和未載入的媒體。媒體管理磁碟也叫做SBT devices(system backup to tape)
恢復日誌 一個單獨的資料庫元件,用來記錄rman對於一個或多個目標資料庫的活動。如果控制檔案丟失,恢復日誌中保留著rman的後設資料,更易恢復。資料庫中的記錄可能在控制檔案中會重寫,但rman管理的記錄永遠在catalog中,除非使用者刪除。

rman登入:
D:\Documents and Settings\tian>rman

恢復管理器: Release 10.2.0.1.0 - Production on 星期日 2月 17 19:27:37 2013

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

RMAN> connect target /

連線到目標資料庫: BJS (DBID=1593468214)
RMAN> connect target sys@bjs


在執行視窗中顯示的提示資訊是不能直接複製出來的,這也是oracle安全性的一部分。


RMAN> show all;  顯示出所有的配置資訊

使用目標資料庫控制檔案替代恢復目錄
RMAN 配置引數為:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
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 ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'G:\ORACLE10G\DATABASE\SNCFBJS.ORA'; #
default


用backup命令可以備份檔案。rman將備份檔案存放在預設磁碟,如果快速恢復區啟用,命令中未指定format引數,rman將在恢復區建立備份並自動賦予唯一名稱。
預設情況下rman建立備份集,即一個或多個只有rman才能寫入資料的物理檔案(備份片段)。

如果制定了backup as copy,rman將每個檔案都複製為其映象。就像cp命令或者windows中copy複製的檔案那樣。

在歸檔模式下,資料庫開啟時就可以備份。這時產生的是非一致性備份,由於儲存過程中重做日誌還在寫。

使用命令backup database plus archivelog;可以將資料庫連同歸檔日誌一起進行備份。

在非歸檔模式下,需要將資料庫啟動到mount狀態才能用rman備份。
RMAN> SHUTDOWN IMMEDIATE;
RMAN> STARTUP MOUNT;
RMAN> BACKUP DATABASE;備份為備份集  或者RMAN> BACKUP AS COPY DATABASE;將其備份為映象檔案
RMAN> ALTER DATABASE OPEN;

備份的選項包括
format 指定位置以及備份片段的名稱。
如:BACKUP FORMAT 'AL_%d/%t/%s/%p' ARCHIVELOG LIKE '%arc_dest%';

TAG 指定名稱的標記,如:
BACKUP
TAG 'weekly_full_db_bkup'
DATABASE MAXSETSIZE 10M;


使用backup incremental命令可以進行增量備份。可以捕獲上一次備份後資料塊級別的修改,通常比全量備份要快、小。使用增量備份進行恢復比用重做日誌要快。

增量備份的起點是level 0 incremental backup,即全量備份。
如果在進行level 1 backup以前沒有進行0級備份,oracle自動建立一個0級備份。

在非歸檔模式下資料庫開啟時不能使用增量備份,但可以在mount模式下進行。

BACKUP INCREMENTAL LEVEL 0 DATABASE; 建立0級備份
BACKUP INCREMENTAL LEVEL 1 CUMULATIVE DATABASE;建立1級累積備份
BACKUP INCREMENTAL LEVEL 1 DATABASE;建立1級差異備份

增量備份包含最近一次0級備份以來的所有資料塊修改;
差異備份包含最近一次備份以阿里的所有資料塊修改。

增量更新備份特性是一種高效的增量備份策略,特點為:
(1)需要0級備份為基礎;
(2)週期性地1級差異備份以與0級備份檔案系統的tag儲存。The BACKUP FOR RECOVER OF COPY command specifies that an incremental backup should contain only blocks changed since the most recent incremental backup with the same tag.
(3)增量備份週期性地應用到0級備份檔案上。


可以使用validate命令確認所有的資料庫檔案都存在;check logical選項也可以檢查邏輯塊中斷。

validate datafile 4 block 10 to 13; 檢查資料塊
validate backupset 3; 校驗備份集


rman選項
主要是list backup和list copy命令:

RMAN> list backup;  顯示備份資訊

使用目標資料庫控制檔案替代恢復目錄

備份集列表
===================

BS 關鍵字  型別 LV 大小       裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
1       Full    6.80M      DISK        00:00:04     17-2月 -13
        BP 關鍵字: 1   狀態: AVAILABLE  已壓縮: NO  標記: TAG20130217T194006
段名:D:\ORACLE\FLASH_RECOVERY_AREA\BJRPS\BACKUPSET\2013_02_17\O1_MF_NCSNF_TAG201
30217T194006_8L1JDTH4_.BKP
  包括的控制檔案: Ckp SCN: 610121       Ckp 時間: 17-2月 -13
  包含的 SPFILE: 修改時間: 17-2月 -13

BS 關鍵字  型別 LV 大小       裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
2       Full    528.41M    DISK        00:00:40     18-2月 -13
        BP 關鍵字: 2   狀態: AVAILABLE  已壓縮: NO  標記: TAG20130218T084954
段名:D:\ORACLE\FLASH_RECOVERY_AREA\BJRPS\BACKUPSET\2013_02_18\O1_MF_NNNDF_TAG201
30218T084954_8L2YONFO_.BKP
  備份集 2 中的資料檔案列表
  檔案 LV 型別 Ckp SCN    Ckp 時間   名稱
  ---- -- ---- ---------- ---------- ----
  1       Full 635239     18-2月 -13 D:\ORACLE\ORADATA\BJRPS\SYSTEM01.DBF
  2       Full 635239     18-2月 -13 D:\ORACLE\ORADATA\BJRPS\UNDOTBS01.DBF
  3       Full 635239     18-2月 -13 D:\ORACLE\ORADATA\BJRPS\SYSAUX01.DBF
  4       Full 635239     18-2月 -13 D:\ORACLE\ORADATA\BJRPS\USERS01.DBF

BS 關鍵字  型別 LV 大小       裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
3       Full    6.80M      DISK        00:00:03     18-2月 -13
        BP 關鍵字: 3   狀態: AVAILABLE  已壓縮: NO  標記: TAG20130218T084954
段名:D:\ORACLE\FLASH_RECOVERY_AREA\BJRPS\BACKUPSET\2013_02_18\O1_MF_NCSNF_TAG201
30218T084954_8L2YQ43X_.BKP
  包括的控制檔案: Ckp SCN: 635239       Ckp 時間: 18-2月 -13
  包含的 SPFILE: 修改時間: 18-2月 -13

BS 關鍵字  型別 LV 大小       裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
4       Full    80.00K     DISK        00:00:02     18-2月 -13
        BP 關鍵字: 4   狀態: AVAILABLE  已壓縮: NO  標記: TAG20130218T085143
段名:D:\ORACLE\FLASH_RECOVERY_AREA\BJRPS\BACKUPSET\2013_02_18\O1_MF_NNSNF_TAG201
30218T085143_8L2YTHWS_.BKP
  包含的 SPFILE: 修改時間: 18-2月 -13

RMAN> list copy;  顯示copy備份

說明與恢復目錄中的任何存檔日誌均不匹配

資料檔案副本列表
關鍵字     檔案 S 完成時間   Ckp SCN    Ckp 時間   名稱
------- ---- - ---------- ---------- ---------- ----
1       1    A 18-2月 -13 635239     18-2月 -13 D:\ORACLE\FLASH_RECOVERY_AREA\BJ
RPS\DATAFILE\O1_MF_SYSTEM_8L2YS089_.DBF
3       2    A 18-2月 -13 635239     18-2月 -13 D:\ORACLE\FLASH_RECOVERY_AREA\BJ
RPS\DATAFILE\O1_MF_UNDOTBS1_8L2YT93X_.DBF
2       3    A 18-2月 -13 635239     18-2月 -13 D:\ORACLE\FLASH_RECOVERY_AREA\BJ
RPS\DATAFILE\O1_MF_SYSAUX_8L2YSSOZ_.DBF
4       4    A 18-2月 -13 635239     18-2月 -13 D:\ORACLE\FLASH_RECOVERY_AREA\BJ
RPS\DATAFILE\O1_MF_USERS_8L2YTDJ3_.DBF

控制檔案副本列表
關鍵字     S 完成時間   Ckp SCN    Ckp 時間   名稱
------- - ---------- ---------- ---------- ----
5       A 18-2月 -13 635239     18-2月 -13 D:\ORACLE\FLASH_RECOVERY_AREA\BJRPS\C
ONTROLFILE\O1_MF_TAG20130218T085143_8L2YTFQG_.CTL


RMAN> list backup of database by backup;  按照資料庫備份集顯示備份


備份集列表
===================

BS 關鍵字  型別 LV 大小       裝置型別 經過時間 完成時間
------- ---- -- ---------- ----------- ------------ ----------
2       Full    528.41M    DISK        00:00:40     18-2月 -13
        BP 關鍵字: 2   狀態: AVAILABLE  已壓縮: NO  標記: TAG20130218T084954
段名:D:\ORACLE\FLASH_RECOVERY_AREA\BJRPS\BACKUPSET\2013_02_18\O1_MF_NNNDF_TAG201
30218T084954_8L2YONFO_.BKP
  備份集 2 中的資料檔案列表
  檔案 LV 型別 Ckp SCN    Ckp 時間   名稱
  ---- -- ---- ---------- ---------- ----
  1       Full 635239     18-2月 -13 D:\ORACLE\ORADATA\BJRPS\SYSTEM01.DBF
  2       Full 635239     18-2月 -13 D:\ORACLE\ORADATA\BJRPS\UNDOTBS01.DBF
  3       Full 635239     18-2月 -13 D:\ORACLE\ORADATA\BJRPS\SYSAUX01.DBF
  4       Full 635239     18-2月 -13 D:\ORACLE\ORADATA\BJRPS\USERS01.DBF

RMAN> list backup by file;  按照檔案顯示備份情況


資料檔案備份列表
========================

檔案關鍵字     TY LV S Ckp SCN    Ckp 時間   段數 副本數 壓縮標記
---- ------- -  -- - ---------- ---------- ------- ------- ---------- ---
1    2       B  F  A 635239     18-2月 -13 1       1       NO         TAG2013021
8T084954
2    2       B  F  A 635239     18-2月 -13 1       1       NO         TAG2013021
8T084954
3    2       B  F  A 635239     18-2月 -13 1       1       NO         TAG2013021
8T084954
4    2       B  F  A 635239     18-2月 -13 1       1       NO         TAG2013021
8T084954

控制檔案備份列表
============================

CF Ckp SCN Ckp 時間   BS 關鍵字  S 段數 副本數 壓縮標記
---------- ---------- ------- - ------- ------- ---------- ---
635239     18-2月 -13 3       A 1       1       NO         TAG20130218T084954
610121     17-2月 -13 1       A 1       1       NO         TAG20130217T194006
SPFILE 備份的列表
======================

修改時間   BS 關鍵字  S 段數 副本數 壓縮標記
---------- ------- - ------- ------- ---------- ---
18-2月 -13 4       A 1       1       NO         TAG20130218T085143
18-2月 -13 3       A 1       1       NO         TAG20130218T084954
17-2月 -13 1       A 1       1       NO         TAG20130217T194006

RMAN> list backup summary;  總結輸出備份資訊


備份列表
===============
關鍵字     TY LV S 裝置型別 完成時間   段數 副本數 壓縮標記
------- -- -- - ----------- ---------- ------- ------- ---------- ---
1       B  F  A DISK        17-2月 -13 1       1       NO         TAG20130217T19
4006
2       B  F  A DISK        18-2月 -13 1       1       NO         TAG20130218T08
4954
3       B  F  A DISK        18-2月 -13 1       1       NO         TAG20130218T08
4954
4       B  F  A DISK        18-2月 -13 1       1       NO         TAG20130218T08
5143

 

類似命令還有:
LIST BACKUP OF DATABASE; 顯示資料庫的所有備份
LIST COPY OF DATAFILE 1, 2;  顯示資料檔案1、2的copy備份
LIST BACKUP OF ARCHIVELOG FROM SEQUENCE 10;  顯示歸檔日誌的備份
LIST BACKUPSET OF DATAFILE 1; 顯示1號資料檔案的備份集


2.資料庫檔案和備份的報告
need backup
如report need backup database
顯示當前哪些檔案需要備份。

obsolete
如 report obsolete
顯示過期的備份集(超過了backup retention policy)

schema
如report schema
顯示錶空間和資料檔案資訊

unrecoverable
如report unrecoverable
顯示自上次備份以來,進行了不可恢復操作的物件

六、rman備份的維護
rman的後設資料存放在目標資料庫的控制檔案中,rman maintenance commands使用這些後設資料來維護備份。
1.交叉檢查備份
crosscheck命令通過儲存在媒體中的檔案校準rman備份的邏輯數量。如果備份放在磁碟上,crosscheck判斷檔案頭是否合法;如果備份在磁帶上,rman查詢rmanrepository從而確定備份片段的名稱和位置。再刪除之前進行交叉備份和是一個好習慣。


交叉校驗的命令包括:
crosscheck backup;
crosscheck copy;


2.刪除過期的備份
delete obsolete命令刪除過期的備份。


七、用資料恢復建議器診斷和修改失效

1.顯示失效,決定修改選項
failure是有健康監控檢測到的永久資料的中斷,級別包括critical、high、low,狀態包括open、closed

用命令list failure檢視當前有哪些failure;
用命令advise failure得到修正當前問題的建議資訊。

2.修正failure
執行repair failure命令,rman使用最近一次建議(advise failure)進行修改。

八、閃回資料庫
閃回整個資料庫,前提是設定了閃回日誌。該命令不能解決媒體失敗或資料檔案丟失的問題。

在閃回資料庫時需要在mount狀態下進行,如果提前設定了恢復時間點,並且在可恢復範圍內,可以直接回復到該時間點。

閃回到某個時間點的表示方法:
FLASHBACK DATABASE TO SCN 861150;

FLASHBACK DATABASE
TO RESTORE POINT BEFORE_CHANGES;

FLASHBACK DATABASE
TO TIMESTAMP TO_DATE(04-DEC-2009 03:30:00','DD-MON-YYYY HH24:MI:SS');


九、資料檔案的恢復

mount狀態下執行
restore database;
recover database ;
可以恢復資料庫

在資料庫開啟,待恢復表空間離線時,執行restore tablespace;
recover tablespace;命令可以恢復表空間。
RECOVER CORRUPTION LIST;覆蓋所有修改的資料塊;
RECOVER DATAFILE 1 BLOCK 233, 235 DATAFILE 2 BLOCK 100 TO 200;覆蓋特定的塊;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26451536/viewspace-754886/,如需轉載,請註明出處,否則將追究法律責任。

相關文章