Oracle 12C RMAN Cross-Platform Transport of PDBs
为了将整个PDB传输到不同的平台,源平台与目标平台必须使用相同的字节序。compatible参数在源CDB数据库与目标CDB数据库中必须设置为12.1或更高版本。
下面的例子将Linux平台上的RAC CDB中的PDB数据库(jypdb与testpdb)传输到windows平台上的单实例CDB数据库中。 执行跨平台传输的操作如下:
1.检查源数据库与目标数据库的compatible参数是否设置为12.0.0或更高版本
源数据库
SQL> show parameter compatibleNAME TYPE VALUE ------------------------------------ ----------- ------------------------------ compatible string 12.2.0 noncdb_compatible boolean FALSE
目标数据库
SQL> show parameter compatibleNAME TYPE VALUE ------------------------------------ ----------- ------------------------------ compatible string 12.2.0 noncdb_compatible boolean FALSE
2.检查源平台与目标平台的字节序
源平台
SQL> select d.platform_name,endian_format from v$transportable_platform tp,v$database d where tp.platform_name=d.platform_name;PLATFORM_NAME ENDIAN_FORMAT ----------------------------------------------------------------------------------------------------- -------------- Linux x86 64-bit Little
目标平台
SQL> select d.platform_name,endian_format from v$transportable_platform tp,v$database d where tp.platform_name=d.platform_name;PLATFORM_NAME ENDIAN_FORMAT -------------------------------------------------------------------------------- -------------- Microsoft Windows x86 64-bit Little
3.将要被传输的pdb(jypdb,testpdb)设置为只读状态
SQL> alter pluggable database all close immediate;Pluggable database altered.SQL> set long 200 SQL> set linesize 200 SQL> select name,open_mode from v$pdbs;NAME OPEN_MODE -------------------------------------------------------------------------------------------------------------------------------- ---------- PDB$SEED READ ONLY JYPDB MOUNTED TESTPDB MOUNTED
4.备份要传输的PDB数据库,可以使用以下一种方法来跨平台传输PDB
4.1使用RMAN连接到CDB的root容器,并使用backup for transport ... pluggable database或者backup to platform ... pluggable database命令来为PDB创建跨平台备份。
4.2使用RMAN连接到PDB,并使用backup for transport或backup to platform命令来为PDB创建跨平台备份。
因为我这里要传输两个PDB所以选择第一种方法
RMAN> backup for transport unplug into '/ora_backup/tpdbs/metadata_jypdb.xml' pluggable database jypdb format '/ora_backup/tpdbs/pdb_%U';Starting backup at 11-FEB-18 using channel ORA_DISK_1 running UNPLUG on the specified pluggable database: JYPDB UNPLUG file path : /ora_backup/tpdbs/metadata_jypdb.xml channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00014 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/users.278.962209649 input datafile file number=00011 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/sysaux.316.962209649 input datafile file number=00012 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/undotbs1.264.962209649 input datafile file number=00013 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/undo_2.268.962209649 input datafile file number=00010 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/system.271.962209649 input datafile file number=00015 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/test.275.962210609 input datafile file number=00022 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/tts.257.966380353 input datafile file number=00023 name=+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/cs.294.966380783 channel ORA_DISK_1: starting piece 1 at 11-FEB-18 channel ORA_DISK_1: finished piece 1 at 11-FEB-18 piece handle=/ora_backup/tpdbs/pdb_8csqvqc5_1_1 tag=TAG20180211T173748 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:56 Finished backup at 11-FEB-18 starting full resync of recovery catalog full resync completeRMAN> backup for transport unplug into '/ora_backup/tpdbs/metadata_testpdb.xml' pluggable database testpdb format '/ora_backup/tpdbs/pdb_%U';Starting backup at 11-FEB-18 starting full resync of recovery catalog full resync complete using channel ORA_DISK_1 running UNPLUG on the specified pluggable database: TESTPDB UNPLUG file path : /ora_backup/tpdbs/metadata_testpdb.xml channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00017 name=+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/sysaux.259.962469409 input datafile file number=00018 name=+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/undotbs1.265.962469409 input datafile file number=00016 name=+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/system.260.962469409 input datafile file number=00019 name=+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/undo_2.266.962469409 input datafile file number=00021 name=+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/test.269.962469409 input datafile file number=00020 name=+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/users.267.962469409 channel ORA_DISK_1: starting piece 1 at 11-FEB-18 channel ORA_DISK_1: finished piece 1 at 11-FEB-18 piece handle=/ora_backup/tpdbs/pdb_8dsqvqpj_1_1 tag=TAG20180211T174458 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:35 Finished backup at 11-FEB-18 starting full resync of recovery catalog full resync complete[oracle@jytest1 tpdbs]$ ls -lrt total 1707488 -rw-r--r-- 1 oracle asmadmin 11413 Feb 11 11:38 metadata_jypdb.xml -rw-r----- 1 oracle asmadmin 1038368768 Feb 11 11:39 pdb_8csqvqc5_1_1 -rw-r--r-- 1 oracle asmadmin 9569 Feb 11 11:45 metadata_testpdb.xml -rw-r----- 1 oracle asmadmin 710066176 Feb 11 11:45 pdb_8dsqvqpj_1_1
5.将在源平台上使用rman backup命令生成的备份集与备份的控制文件传输到目标平台的D:\app\oracle\oradata\pdbs目录中
6.将PDB(jypdb,testpdb)还原到目标数据库
RMAN> restore from platform 'Linux x86 64-bit' foreign pluggable database jypdb to new from backupset 'D:\app\oracle\oradata\pdbs\pdb_8csqvqc5_1_1';从位于 11-2月 -18 的 restore 开始 使用目标数据库控制文件替代恢复目录 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=1522 设备类型=DISK通道 ORA_DISK_1: 正在开始还原数据文件备份集 通道 ORA_DISK_1: 正在指定从备份集还原的数据文件 通道 ORA_DISK_1: 正在还原备份片段中的所有外部文件 通道 ORA_DISK_1: 正在读取备份片段 D:\app\oracle\oradata\pdbs\pdb_8csqvqc5_1_1 通道 ORA_DISK_1: 将外部文件 14 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_USERS_F805GPMS_.DBF 通道 ORA_DISK_1: 将外部文件 11 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_SYSAUX_F805GPMS_.DBF 通道 ORA_DISK_1: 将外部文件 12 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_UNDOTBS1_F805GPMS_.DBF 通道 ORA_DISK_1: 将外部文件 13 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_UNDO_2_F805GPMS_.DBF 通道 ORA_DISK_1: 将外部文件 10 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_SYSTEM_F805GPN8_.DBF 通道 ORA_DISK_1: 将外部文件 15 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_TEST_F805GPN8_.DBF 通道 ORA_DISK_1: 将外部文件 22 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_TTS_F805GPN8_.DBF 通道 ORA_DISK_1: 将外部文件 23 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_CS_F805GPN8_.DBF 通道 ORA_DISK_1: 外部片段句柄 = D:\app\oracle\oradata\pdbs\pdb_8csqvqc5_1_1 通道 ORA_DISK_1: 已还原备份片段 1 通道 ORA_DISK_1: 还原完成, 用时: 00:00:36 在 11-2月 -18 完成了 restoreRMAN> restore from platform 'Linux x86 64-bit' foreign pluggable database testpdb to new from backupset 'D:\app\oracle\oradata\pdbs\pdb_8dsqvqpj_1_1';从位于 11-2月 -18 的 restore 开始 使用目标数据库控制文件替代恢复目录 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=1522 设备类型=DISK通道 ORA_DISK_1: 正在开始还原数据文件备份集 通道 ORA_DISK_1: 正在指定从备份集还原的数据文件 通道 ORA_DISK_1: 正在还原备份片段中的所有外部文件 通道 ORA_DISK_1: 正在读取备份片段 D:\app\oracle\oradata\pdbs\pdb_8dsqvqpj_1_1 通道 ORA_DISK_1: 将外部文件 17 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_SYSAUX_F806C6WT_.DBF 通道 ORA_DISK_1: 将外部文件 18 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_UNDOTBS1_F806C6WT_.DBF 通道 ORA_DISK_1: 将外部文件 16 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_SYSTEM_F806C6WT_.DBF 通道 ORA_DISK_1: 将外部文件 19 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_UNDO_2_F806C6XB_.DBF 通道 ORA_DISK_1: 将外部文件 21 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_TEST_F806C6XB_.DBF 通道 ORA_DISK_1: 将外部文件 20 还原到 D:\APP\ORACLE\ORADATA\JY\DATAFILE\O1_MF_USERS_F806C6XB_.DBF 通道 ORA_DISK_1: 外部片段句柄 = D:\app\oracle\oradata\pdbs\pdb_8dsqvqpj_1_1 通道 ORA_DISK_1: 已还原备份片段 1 通道 ORA_DISK_1: 还原完成, 用时: 00:00:26 在 11-2月 -18 完成了 restore
7.在目标主机上修改metadata_jypdb.xml与metadata_testpdb.xml文件将数据文件路径修改为还原后数据文件所在路径
8.将传输过来的PDB(jypdb,testpdb)插入CDB
SQL> create pluggable database jypdb using 'D:\app\oracle\oradata\pdbs\metadata_jypdb.xml' nocopy;插接式数据库已创建。SQL> create pluggable database testpdb using 'D:\app\oracle\oradata\pdbs\metadata_testpdb.xml' nocopy ;插接式数据库已创建。SQL> set long 200 SQL> set linesize 200 SQL> select name,open_mode from v$pdbs;NAME OPEN_MODE -------------------------------------------------------------------------------------------------------------------------------- ---------- PDB$SEED READ ONLY JYPDB MOUNTED TESTPDB MOUNTEDSQL> alter pluggable database all open;插接式数据库已变更。SQL> select name,open_mode from v$pdbs;NAME OPEN_MODE -------------------------------------------------------------------------------------------------------------------------------- ---------- PDB$SEED READ ONLY JYPDB READ WRITE TESTPDB READ WRITE
9.查询tts.t1与cs.t2表中的数据来验证跨平台传输PDB是否操作成功
SQL> select count(*) from tts.t1;COUNT(*) ----------90SQL> select count(*) from cs.t2;COUNT(*) ----------92
到此,跨平台传输PDB就完成了。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26015009/viewspace-2151522/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26015009/viewspace-2151522/
Oracle 12C RMAN Cross-Platform Transport of PDBs相关推荐
- Oracle 12c RMAN全攻略
文章目录 1. RMAN命令 2. RMAN备份 2.1 控制RMAN备份 2.2 备份保留策略 2.3 快速恢复区(Fast Recovery Area) 2.4 backup...plus arc ...
- Oracle 12c 创建与删除CDB、PDBs
一. 计划多租户环境 准备足够的内存,磁盘空间:需要考虑的问题包括如下 16 个方面: 1. PDB 数量 (max 253) 与空间计划 2. 后台进程数量( proce ...
- Oracle 12C -- 设置CDB启动后,PDBs自动启动
CDB重启后,PDBs默认是处于mounted状态 SQL> select name,open_mode from v$pdbs;NAME OPEN_MODE ----------------- ...
- oracle12c备份与恢复,Oracle 12c 备份与恢复
备份: 1.备份全部的数据库(包括CDB) rman target / BACKUP DATABASE; 2.只备份CDB rman target / BACKUP DATABASE ROOT; 3. ...
- Oracle 12c CDB、PDBs创建
Oracle 12c CDB.PDBs创建 一. 计划多租户环境 准备足够的内存,磁盘空间:需要考虑的问题包括如下 16 个方面: 1. PDB 数量 (max 253) 与空间计 ...
- Oracle 12c 新特性 --- Backing Up CDBs and PDBs
2017-08-03 00:324620原创Oracle 12c编辑删除 本文链接:https://www.cndba.cn/leo1990/article/2045 概念 A CDB consist ...
- oracle 恢复表关联,ORACLE 12C使用RMAN进行表恢复
ORACLE 12C使用RMAN进行表恢复 在12C以前的版本中,rman可以进行db,tablespace,datafile,block级别和TSPITR的恢复,12C引入了table级别的恢复 在 ...
- oracle中pdbs是什么,Oracle 12c启动时PDBs的自动打开
Pluggable Database(PDB)为Oracle 12c中的一个重要的新特性, 但启动12c实例时并不会自动打开PDB数据库,这样,在启动实例后必须手动打开PDBs. 1. 实例启动后,手 ...
- ORACLE 12C 及以上grant select on V_$PDBS
ORACLE 12C 及以上grant select on V_$PDBS会同时授权 grant select on DBA_2PC_NEIGHBORS grant select on DBA_2PC ...
最新文章
- iOS开发中用到的一些第三方库
- 1045 快速排序 (25 分)
- “去除更多的鲜艳色彩和动态效果的搭配,精简用户使用步长,让软件更像是一件工具。(不排除以后更先进的吸引眼球的方式)“。
- 用MDT 2012为企业部署windows 7(七)--创建标准操作系统部署任务序列
- 微信小程序 自定义顶部状态栏
- 可以种树吗_基本农田能干什么?种树?建房?搞种养殖?哪种可以?
- 手写 instanceof 方法
- Leetcode每日一题:168.excel-sheet-column-title(Excel表名称)
- Swagger注解-@ApiImplicitParams 和 @ApiImplicitParam
- linux如何找大文件夹,Linux系统中如何查找大文件或目录文件夹的方法
- pandas合并数据集-【老鱼学pandas】
- Delphi2010 Dll 函数列表查看
- ezcad旋转轴标刻参数_激光打标机软件ezcad中菜单下的旋转角度标刻2功能介绍及其操作设置...
- gmap mysql cachet_百度谷歌离线地图解决方案(离线地图下载)
- miRNA数据库篇——RNAcentral
- windows10桌面计算机图标删除吗,win10系统桌面图标无法删除的解决方案
- 【转】个性化二级域名Nginx配置
- android项目epub格式电子书开源开发
- java 正则表达式电话邮箱_Java编程:正则表达式判断邮箱及电话号码是否有效
- Maven Assembly插件介绍
热门文章
- 【信息收集】指纹识别
- 电脑无法登录microsoft账号怎么办?
- mysql建立聚族索引语句_mysql聚集索引
- java tail -n_使用 tail 结合 grep 查找日志关键字并高亮及显示所在行上下文
- kodi没有中文设置_kodi播放器如何设置为中文界面-kodi播放器设置中文的方法 - 河东软件园...
- flink分析使用之一环境安装
- OpenCV 打开双目摄像头(python版)
- ShineScrum10月27日高端敏捷沙龙火热报名
- AI和AR虚拟胡须造型背后逻辑
- 将表插入PowerPoint 2007