【RECO_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(四)PDB的幾種恢復方式
說明
相關文章連線:
Oracle 12c之CDB與PDB的備份與恢復(一)什麼是CDB與PDB?: http://blog.itpub.net/69992972/viewspace-2793217/
Oracle 12c之CDB與PDB的備份與恢復(二)備份恢復之前你需要知道的: http://blog.itpub.net/69992972/viewspace-2794508/
Oracle 12c之CDB與PDB的備份與恢復(三)CDB與PDB的備份方式: http://blog.itpub.net/69992972/viewspace-2794518/
Oracle 12c之CDB與PDB的備份與恢復(四)PDB的幾種恢復方式: http://blog.itpub.net/69992972/viewspace-2794540/
PDB的幾種恢復方式
1. PDB庫TESTPDB1的system表空間的資料檔案丟失
如果PDB的system丟失,會導致該PDB崩潰,但是CDB和其他PDB不會被影響到。這種情況下,必須先從CDB開始恢復!方法如下:
$ rman target sys/sys@test_cdb
RMAN> RESTORE DATAFILE 7;
RMAN> RECOVER DATAFILE 7;
RMAN> ALTER PLUGGABLE DATABASE TESTPDB1 OPEN;
注:
目前髮型的版本,某個PDB的system資料檔案丟失有機率造成CDB和其他PDB崩潰,此時需要將CDB啟動到mount 狀態,才能恢復PDB的system資料檔案。這個問題Oracle官方表明會在以後的版本修復這個問題。
2. PDB的非系統資料檔案丟失
假如USER表空間的9號資料檔案丟失。根據實際情況, 丟失的資料檔案可能已經是 offline 狀態,如果沒有,必須先 offline:
$ rman target sys/sys@test_pdb
RMAN> ALTER DATABASE DATAFILE 10 OFFLINE; --先離線
RMAN> RESTORE DATAFILE 9;
RMAN> RECOVER DATAFILE 9;
RMAN> ALTER DATABASE DATAFILE 10 ONLINE; --恢復後再聯機
3. PDB的某個表空間的所有資料檔案都丟失
某個表空間丟失(比如USERS表空間),但是該PDB還處於開啟狀態。
$ rman target sys/oracle@ test_pdb
RMAN> ALTER TABLESPACE USERS OFFLINE; --先離線
RMAN> RESTORE TABLESPACE USERS;
RMAN> RECOVER TABLESPACE USERS;
RMAN> ALTER TABLESPACE USERS ONLINE; --恢復後再聯機
4: 可插拔資料庫的所有資料檔案都丟失
$ rman target sys/sys@ test_cdb
RMAN> RESTORE PLUGGABLE DATABASE TESTPDB1;
RMAN> RECOVER PLUGGABLE DATABASE TESTPDB1;
RMAN> ALTER PLUGGABLE DATABASE TESTPDB1 open;
注:
1. 可能會混淆的一個地方是:如果某個PDB如果丟失了,並不等同於刪除了該PDB。因為PDB的丟失可能是指因為一些意外情況下的資料庫以及檔案的誤刪除或者損壞, 但是它的metadata資料還是存在的。在這種metadata還存在的情況下,從備份中恢復出來是可行的。
但如果是刪除了可插拔資料庫,這樣同樣會把metadata從repository中刪除。這種情況下做restore就會遇到錯誤:
RMAN-06813: could not translate pluggable database TESTPDB1
2. 最重要的一點是:如果我們只對單個PDB備份進行備份,是不能夠恢復不同伺服器中的單個可插拔資料庫或執行時間點恢復,必須要同時擁有PDB和對應的CDB的備份!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69992972/viewspace-2794540/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【BAK_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(三)CDB與PDB的備份方式Oracle
- 【ASK_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(一)什麼是CDB與PDB?Oracle
- 【ASK_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(二)備份恢復之前你需要知道的Oracle
- oracle 12c 針對cdb的差異0備與對pdb進行恢復Oracle
- Oracle 12c 備份與恢復Oracle
- Mysql的幾種備份與恢復MySql
- 12C針對cdb全備與 PDB執行不完全恢復(基於SCN)
- Oracle12c 針對單個pdb的全備與恢復Oracle
- RAC備份恢復之Voting備份與恢復
- 異機使用完全備份恢復指定的PDB
- Oracle 備份 與 恢復 概述Oracle
- 12C PDB使用RMAN的4種完全恢復場景
- oracle 12c PDB隨CDB啟動和連結PDB的方式Oracle
- 備份與恢復oracle_homeOracle
- 備份與恢復:polardb資料庫備份與恢復資料庫
- DB的備份與恢復
- GitLab的備份與恢復Gitlab
- oracle 12c中CDB和PDB的備份還原實驗Oracle
- Oracle 備份恢復之 FlashbackOracle
- RMAN備份恢復典型案例——跨平臺遷移pdb
- MySQL備份與恢復——基於Xtrabackup物理備份恢復MySql
- oracle 12c rman備份pdbOracle
- Jenkins備份與恢復Jenkins
- Postgresql 備份與恢復SQL
- MySQL 備份與恢復MySql
- MySQL 非常規恢復與物理備份恢復MySql
- 2.6.1 CDB中備份和恢復的概述
- MySQL備份與恢復——基於MyDumper/MyLoader 邏輯備份恢復MySql
- Elasticsearch叢集的備份與恢復Elasticsearch
- Linux 系統的備份與恢復Linux
- 12C_PDB的不完整恢復
- GitLab的自動備份、清理備份與恢復Gitlab
- Oracle 備份恢復篇之RMAN catalogOracle
- MySQL備份與恢復——基於OUTFILE /LOAD DATA 邏輯備份恢復MySql
- Mysql備份與恢復(1)---物理備份MySql
- Dedecms資料庫恢復與備份的兩種方法資料庫
- 【RECO_ORACLE】Oracle閃回PDB的方法Oracle
- 《入門MySQL—備份與恢復》MySql