可以对一个或多个PDB执行完全恢复而不影响其它为open状态的PDB的操作。RMAN有两种方法来恢复PDB:
.连接到CDB的root容器,然后使用restore pluggable database与recover pluggable database命令。这种方法能让你使用单个命令来恢复多个PDB。
.连接到PDB并使用restore database与recover database语句,这种方法只能恢复单个PDB并且能让你使用相同的命令来恢复non-CDB数据库
使用RMAN恢复一个或多个PDB
1.启动RMAN并使用有sysdba或sysbackup权限的公共用户连接到root容器
[oracle@jytest1 ~]$ rman target/ catalog rco/xxxxx@jypdb_173 Recovery Manager: Release 12.2.0.1.0 - Production on Mon Dec 11 16:56:58 2017 Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved. connected to target database: JY (DBID=979425723) connected to recovery catalog database
2.关闭你要执行恢复操作的PDB
SQL> alter pluggable database jypdb,testpdb close immediate; Pluggable database altered. SQL> select name,open_mode from v$pdbs; NAME OPEN_MODE -------------------------------------------------------------------------------------------------------------------------------- ---------- PDB$SEED READ ONLY JYPDB MOUNTED TESTPDB MOUNTED SQL>
3.可选操作,使用configure命令来配置缺省设备类型与自动通道
4.执行restore pluggable database与recover pluggable database命令,下面的语句恢复 jypdb,testpdb
RMAN> restore pluggable database jypdb,testpdb; Starting restore at 11-DEC-17 starting full resync of recovery catalog full resync complete allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=2279 instance=jy1 device type=DISK skipping datafile 5; already restored to file +DATA/JY/5F9AA264B21F3ED9E053AB828A0A6088/DATAFILE/system.256.962209675 skipping datafile 6; already restored to file +DATA/JY/5F9AA264B21F3ED9E053AB828A0A6088/DATAFILE/sysaux.270.962209675 skipping datafile 8; already restored to file +DATA/JY/5F9AA264B21F3ED9E053AB828A0A6088/DATAFILE/undotbs1.296.962209675 channel ORA_DISK_1: starting datafile backup set restore channel ORA_DISK_1: specifying datafile(s) to restore from backup set channel ORA_DISK_1: restoring datafile 00010 to +DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/system.271.962209649 channel ORA_DISK_1: restoring datafile 00011 to +DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/sysaux.316.962209649 channel ORA_DISK_1: restoring datafile 00012 to +DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/undotbs1.264.962209649 channel ORA_DISK_1: restoring datafile 00013 to +DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/undo_2.268.962209649 channel ORA_DISK_1: restoring datafile 00014 to +DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/users.278.962209649 channel ORA_DISK_1: restoring datafile 00015 to +DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/test.275.962210609 channel ORA_DISK_1: reading from backup piece +TEST/rman_backup/jy_979425723_20171211_0osls830_1_1 channel ORA_DISK_1: piece handle=+TEST/rman_backup/jy_979425723_20171211_0osls830_1_1 tag=TAG20171211T164446 channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:00:35 channel ORA_DISK_1: starting datafile backup set restore channel ORA_DISK_1: specifying datafile(s) to restore from backup set channel ORA_DISK_1: restoring datafile 00016 to +DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/system.260.962469409 channel ORA_DISK_1: restoring datafile 00017 to +DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/sysaux.259.962469409 channel ORA_DISK_1: restoring datafile 00018 to +DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/undotbs1.265.962469409 channel ORA_DISK_1: restoring datafile 00019 to +DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/undo_2.266.962469409 channel ORA_DISK_1: restoring datafile 00020 to +DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/users.267.962469409 channel ORA_DISK_1: restoring datafile 00021 to +DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/test.269.962469409 channel ORA_DISK_1: reading from backup piece +TEST/rman_backup/jy_979425723_20171211_0psls843_1_1 channel ORA_DISK_1: piece handle=+TEST/rman_backup/jy_979425723_20171211_0psls843_1_1 tag=TAG20171211T164446 channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:00:36 Finished restore at 11-DEC-17 RMAN> recover pluggable database jypdb,testpdb; Starting recover at 11-DEC-17 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=2279 instance=jy1 device type=DISK starting media recovery media recovery complete, elapsed time: 00:00:02 Finished recover at 11-DEC-17
5.open PDB(jypdb,testpdb)
SQL> alter pluggable database jypdb,testpdb open; Pluggable database altered. SQL> select name,open_mode from v$pdbs; NAME OPEN_MODE -------------------------------------------------------------------------------------------------------------------------------- ---------- PDB$SEED READ ONLY JYPDB READ WRITE TESTPDB