備份
rman只備份cdb
只備份CDB數據庫需要具有SYSDBA或SYSBACKUP權限用戶連接到CDB的root環境下,執行backupdatabase root命令即可完成對CDB的備份,方法如下:
RMAN> backup database root;
注:執行backup database root不給數據文件保存位置時,備份文件默認存放在快速恢復區中。

[oracle@jydb1 ~]$ rman target / 恢復管理器: Release 12.2.0.1.0 - Production on 星期五 11月 9 14:52:04 2018 Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved. 已連接到目標數據庫: ORCL (DBID=1508459345) RMAN> backup database root; 從位於 09-11月-18 的 backup 開始 使用目標數據庫控制文件替代恢復目錄 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=91 實例 = racdb11 設備類型 = DISK 通道 ORA_DISK_1: 正在啟動全部數據文件備份集 通道 ORA_DISK_1: 正在指定備份集內的數據文件 輸入數據文件, 文件號 = 00007 名稱 = +DATA/ORCL/DATAFILE/undotbs2.268.980678727 輸入數據文件, 文件號 = 00005 名稱 = +DATA/ORCL/DATAFILE/undotbs1.264.980678657 輸入數據文件, 文件號 = 00003 名稱 = +DATA/ORCL/DATAFILE/sysaux.262.980678649 輸入數據文件, 文件號 = 00001 名稱 = +DATA/ORCL/DATAFILE/system.260.980678629 輸入數據文件, 文件號 = 00008 名稱 = +DATA/ORCL/DATAFILE/users.269.980678729 通道 ORA_DISK_1: 正於 09-11月-18 啟動段 1 通道 ORA_DISK_1: 完成了於 09-11月-18 啟動段 1 片段句柄 = +FRA/ORCL/BACKUPSET/2018_11_09/nnndf0_tag20181109t145316_0.289.991752797 標記 = TAG20181109T145316 注釋 = NONE 通道 ORA_DISK_1: 備份集完成, 用時: 00:01:36 在 09-11月-18 完成了 backup 從位於 09-11月-18 的 Control File and SPFILE Autobackup 開始 片段句柄 = +FRA/ORCL/AUTOBACKUP/2018_11_09/s_991752892.291.991752895 注釋 = NONE 在 09-11月-18 完成了 Control File and SPFILE Autobackup
查看備份
RMAN> list backupset;

RMAN> list backupset; 備份集列表 =================== BS 關鍵字 類型 LV 大小 設備類型 經過時間 完成時間 ------- ---- -- ---------- ----------- ------------ ---------- 10 Full 2.44G DISK 00:01:28 09-11月-18 BP 關鍵字: 10 狀態: AVAILABLE 已壓縮: NO 標記: TAG20181109T145316 段名:+FRA/ORCL/BACKUPSET/2018_11_09/nnndf0_tag20181109t145316_0.289.991752797 備份集 10 中的數據文件列表 File LV Type Ckp SCN Ckp 時間 Abs Fuz SCN Sparse Name ---- -- ---- ---------- ---------- ----------- ------ ---- 1 Full 14790568 09-11月-18 NO +DATA/ORCL/DATAFILE/system.260.980678629 3 Full 14790568 09-11月-18 NO +DATA/ORCL/DATAFILE/sysaux.262.980678649 5 Full 14790568 09-11月-18 NO +DATA/ORCL/DATAFILE/undotbs1.264.980678657 7 Full 14790568 09-11月-18 NO +DATA/ORCL/DATAFILE/undotbs2.268.980678727 8 Full 14790568 09-11月-18 NO +DATA/ORCL/DATAFILE/users.269.980678729 BS 關鍵字 類型 LV 大小 設備類型 經過時間 完成時間 ------- ---- -- ---------- ----------- ------------ ---------- 11 Full 19.09M DISK 00:00:02 09-11月-18 BP 關鍵字: 11 狀態: AVAILABLE 已壓縮: NO 標記: TAG20181109T145452 段名:+FRA/ORCL/AUTOBACKUP/2018_11_09/s_991752892.291.991752895 包含的 SPFILE: 修改時間: 09-11月-18 SPFILE db_unique_name: ORCL 包括的控制文件: Ckp SCN: 14790655 Ckp 時間: 09-11月-18
rman備份cdb及所有pdb
備份整個CDB數據庫及其下面的所有PDB類似於非CDB數據庫方法相同,使用具有SYSDBA或SYSBACKUP權限用戶連接到CDB的root環境下面,然后執行backupdatabase命令即可完成整個CDB的備份,方法如下:
RMAN> backup database;

RMAN> backup database; 從位於 09-11月-18 的 backup 開始 使用通道 ORA_DISK_1 通道 ORA_DISK_1: 正在啟動全部數據文件備份集 通道 ORA_DISK_1: 正在指定備份集內的數據文件 輸入數據文件, 文件號 = 00007 名稱 = +DATA/ORCL/DATAFILE/undotbs2.268.980678727 輸入數據文件, 文件號 = 00005 名稱 = +DATA/ORCL/DATAFILE/undotbs1.264.980678657 輸入數據文件, 文件號 = 00003 名稱 = +DATA/ORCL/DATAFILE/sysaux.262.980678649 輸入數據文件, 文件號 = 00001 名稱 = +DATA/ORCL/DATAFILE/system.260.980678629 輸入數據文件, 文件號 = 00008 名稱 = +DATA/ORCL/DATAFILE/users.269.980678729 通道 ORA_DISK_1: 正於 09-11月-18 啟動段 1 通道 ORA_DISK_1: 完成了於 09-11月-18 啟動段 1 片段句柄 = +FRA/ORCL/BACKUPSET/2018_11_09/nnndf0_tag20181109t152625_0.291.991754787 標記 = TAG20181109T152625 注釋 = NONE 通道 ORA_DISK_1: 備份集完成, 用時: 00:01:25 通道 ORA_DISK_1: 正在啟動全部數據文件備份集 通道 ORA_DISK_1: 正在指定備份集內的數據文件 輸入數據文件, 文件號 = 00011 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/undotbs1.275.980687407 輸入數據文件, 文件號 = 00010 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/sysaux.273.980687407 輸入數據文件, 文件號 = 00009 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/system.274.980687407 輸入數據文件, 文件號 = 00012 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/undo_2.277.980687461 輸入數據文件, 文件號 = 00013 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/users.278.980687465 通道 ORA_DISK_1: 正於 09-11月-18 啟動段 1 通道 ORA_DISK_1: 完成了於 09-11月-18 啟動段 1 片段句柄 = +FRA/ORCL/703A8F7652857A64E053600CA8C00EED/BACKUPSET/2018_11_09/nnndf0_tag20181109t152625_0.289.991754873 標記 = TAG20181109T152625 注釋 = NONE 通道 ORA_DISK_1: 備份集完成, 用時: 00:00:35 通道 ORA_DISK_1: 正在啟動全部數據文件備份集 通道 ORA_DISK_1: 正在指定備份集內的數據文件 輸入數據文件, 文件號 = 00002 名稱 = +DATA/ORCL/70388319BB1D8FD3E0535F0CA8C0BAB2/DATAFILE/system.261.980678637 輸入數據文件, 文件號 = 00006 名稱 = +DATA/ORCL/70388319BB1D8FD3E0535F0CA8C0BAB2/DATAFILE/undotbs1.265.980678659 輸入數據文件, 文件號 = 00004 名稱 = +DATA/ORCL/70388319BB1D8FD3E0535F0CA8C0BAB2/DATAFILE/sysaux.263.980678653 通道 ORA_DISK_1: 正於 09-11月-18 啟動段 1 通道 ORA_DISK_1: 完成了於 09-11月-18 啟動段 1 片段句柄 = +FRA/ORCL/70388319BB1D8FD3E0535F0CA8C0BAB2/BACKUPSET/2018_11_09/nnndf0_tag20181109t152625_0.337.991754909 標記 = TAG20181109T152625 注釋 = NONE 通道 ORA_DISK_1: 備份集完成, 用時: 00:00:15 在 09-11月-18 完成了 backup 從位於 09-11月-18 的 Control File and SPFILE Autobackup 開始 片段句柄 = +FRA/ORCL/AUTOBACKUP/2018_11_09/s_991754923.338.991754925 注釋 = NONE 在 09-11月-18 完成了 Control File and SPFILE Autobackup
查看備份結果

RMAN> list backupset; 備份集列表 =================== BS 關鍵字 類型 LV 大小 設備類型 經過時間 完成時間 ------- ---- -- ---------- ----------- ------------ ---------- 12 Full 2.44G DISK 00:01:21 09-11月-18 BP 關鍵字: 12 狀態: AVAILABLE 已壓縮: NO 標記: TAG20181109T152625 段名:+FRA/ORCL/BACKUPSET/2018_11_09/nnndf0_tag20181109t152625_0.291.991754787 備份集 12 中的數據文件列表 File LV Type Ckp SCN Ckp 時間 Abs Fuz SCN Sparse Name ---- -- ---- ---------- ---------- ----------- ------ ---- 1 Full 14791547 09-11月-18 NO +DATA/ORCL/DATAFILE/system.260.980678629 3 Full 14791547 09-11月-18 NO +DATA/ORCL/DATAFILE/sysaux.262.980678649 5 Full 14791547 09-11月-18 NO +DATA/ORCL/DATAFILE/undotbs1.264.980678657 7 Full 14791547 09-11月-18 NO +DATA/ORCL/DATAFILE/undotbs2.268.980678727 8 Full 14791547 09-11月-18 NO +DATA/ORCL/DATAFILE/users.269.980678729 BS 關鍵字 類型 LV 大小 設備類型 經過時間 完成時間 ------- ---- -- ---------- ----------- ------------ ---------- 13 Full 1.20G DISK 00:00:32 09-11月-18 BP 關鍵字: 13 狀態: AVAILABLE 已壓縮: NO 標記: TAG20181109T152625 段名:+FRA/ORCL/703A8F7652857A64E053600CA8C00EED/BACKUPSET/2018_11_09/nnndf0_tag20181109t152625_0.289.991754873 備份集 13 中的數據文件列表 容器 ID: 3, PDB 名稱: RACDB1PDB File LV Type Ckp SCN Ckp 時間 Abs Fuz SCN Sparse Name ---- -- ---- ---------- ---------- ----------- ------ ---- 9 Full 12043854 10-9月 -18 NO +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/system.274.980687407 10 Full 12043854 10-9月 -18 NO +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/sysaux.273.980687407 11 Full 12043854 10-9月 -18 NO +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/undotbs1.275.980687407 12 Full 12043854 10-9月 -18 NO +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/undo_2.277.980687461 13 Full 12043854 10-9月 -18 NO +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/users.278.980687465 BS 關鍵字 類型 LV 大小 設備類型 經過時間 完成時間 ------- ---- -- ---------- ----------- ------------ ---------- 14 Full 393.13M DISK 00:00:11 09-11月-18 BP 關鍵字: 14 狀態: AVAILABLE 已壓縮: NO 標記: TAG20181109T152625 段名:+FRA/ORCL/70388319BB1D8FD3E0535F0CA8C0BAB2/BACKUPSET/2018_11_09/nnndf0_tag20181109t152625_0.337.991754909 備份集 14 中的數據文件列表 容器 ID: 2, PDB 名稱: PDB$SEED File LV Type Ckp SCN Ckp 時間 Abs Fuz SCN Sparse Name ---- -- ---- ---------- ---------- ----------- ------ ---- 2 Full 1103469 05-7月 -18 NO +DATA/ORCL/70388319BB1D8FD3E0535F0CA8C0BAB2/DATAFILE/system.261.980678637 4 Full 1103469 05-7月 -18 NO +DATA/ORCL/70388319BB1D8FD3E0535F0CA8C0BAB2/DATAFILE/sysaux.263.980678653 6 Full 1103469 05-7月 -18 NO +DATA/ORCL/70388319BB1D8FD3E0535F0CA8C0BAB2/DATAFILE/undotbs1.265.980678659 BS 關鍵字 類型 LV 大小 設備類型 經過時間 完成時間 ------- ---- -- ---------- ----------- ------------ ---------- 15 Full 19.09M DISK 00:00:02 09-11月-18 BP 關鍵字: 15 狀態: AVAILABLE 已壓縮: NO 標記: TAG20181109T152843 段名:+FRA/ORCL/AUTOBACKUP/2018_11_09/s_991754923.338.991754925 包含的 SPFILE: 修改時間: 09-11月-18 SPFILE db_unique_name: ORCL 包括的控制文件: Ckp SCN: 14791608 Ckp 時間: 09-11月-18
備份單個或多個pdb
1、在CDB根(root)使用BACKUP PLUGGABLE DATABASE命令備份一個或多個PDB數據庫。
命令:
RMAN> backuppluggable database pdb1; //備份多個的話可以pdb1,pdb2這種形式。
2、在PDB中使用BACKUP DATABASE備份當前連接的PDB數據庫,前提條件是需要配置好TNSNAMES.ORA文件。

[oracle@jydb1 ~]$ rman target sys/******@jydb1/RACDB1PDB 恢復管理器: Release 12.2.0.1.0 - Production on 星期六 11月 10 11:25:49 2018 Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved. 已連接到目標數據庫: ORCL:RACDB1PDB (DBID=415676852, 未打開) RMAN> backup database; 從位於 10-11月-18 的 backup 開始 使用目標數據庫控制文件替代恢復目錄 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=117 實例 = racdb11 設備類型 = DISK 通道 ORA_DISK_1: 正在啟動全部數據文件備份集 通道 ORA_DISK_1: 正在指定備份集內的數據文件 輸入數據文件, 文件號 = 00011 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/undotbs1.275.980687407 輸入數據文件, 文件號 = 00010 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/sysaux.273.980687407 輸入數據文件, 文件號 = 00009 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/system.274.980687407 輸入數據文件, 文件號 = 00012 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/undo_2.277.980687461 輸入數據文件, 文件號 = 00013 名稱 = +DATA/ORCL/703A8F7652857A64E053600CA8C00EED/DATAFILE/users.278.980687465 通道 ORA_DISK_1: 正於 10-11月-18 啟動段 1 通道 ORA_DISK_1: 完成了於 10-11月-18 啟動段 1 片段句柄 = +FRA/ORCL/703A8F7652857A64E053600CA8C00EED/BACKUPSET/2018_11_10/nnndf0_tag20181110t112759_0.289.991826881 標記 = TAG20181110T112759 注釋 = NONE 通道 ORA_DISK_1: 備份集完成, 用時: 00:00:45 在 10-11月-18 完成了 backup
恢復
整體數據庫恢復(cdb和所有pdb)
12C數據庫加強了RMAN恢復的功能,恢復的方式基本同以前的模式一樣,如果是在一個全新的異地進行恢復
操作步驟
1、首先准備同版本系統和數據庫軟件,僅安裝數據庫軟件;
2、備份完將所有備份介質傳到異地服務器B(如果兩台機器是內連網絡,可以考慮結合NFS服務從一開始就備份到服務器B上)。
3、通過RMAN命令或者拷貝原始庫的控制文件到新庫上,修改參數文件、創建數據文件路徑等,啟動CDB數據庫到mount狀態,聲明恢復目錄
4、restore還原數據文件
5、recover恢復到故障時間點
6、其他調整
恢復過程詳見我的另一篇博文https://www.cnblogs.com/-abm/p/10024815.html
單個pdb數據庫恢復
恢復單個PDB的前提是CDB已經能夠正常啟動,在CDB啟動的情況下在RMAN中采用restore pluggable database pdb名稱指定單個PDB數據庫進行恢復,如下
RMAN>restore pluggable database orcl;
...
RMAN>recover pluggable database orcl;
...
最后,使用restlogs方式打開數據庫
SQL>alter pluggable database pdb1 orcl resetlogs;
恢復pdb數據文件
數據庫在open的時候,會對當前的數據的所有數據文件進行檢查。如果數據文件出現異常,則從報錯中獲取數據文件id,到rman下進行還原和恢復后方能正常啟動數據庫。(還原的前提是你有數據庫的rman備份數據,包括:數據文件備份、歸檔日志備份、還可能用到redo文件)
當cdb在打開的時候,數據庫不會檢查pdb中的數據文件。
RMAN>restore datafile datafile_id; ... RMAN>recover datafile datafile_id; ... 最后,再次打開數據庫 SQL>alter database open;
參考:https://blog.csdn.net/wenzhongyan/article/details/51887351