12.2 Rman 跨平台传输 PDB 到目的 CDB
本文介绍了使用RMAN工具跨平台传输可插拔数据库(PDB)的方法。主要内容包括:1)源端与目标端CDB必须具有相同字节序;2)详细操作步骤:关闭源PDB、执行备份、传输备份文件、检查兼容性、目标端还原PDB并打开;3)备注说明可采用一致性或非一致性备份策略,后者通过ALLOW INCONSISTENT参数实现以减少停机时间。示例环境为Solaris到AIX平台迁移,使用虚拟数据库名SRC122和D
12.2 Rman 跨平台传输 PDB 到目的 CDB
KB121961
上次更新时间
Nov 30, 2025
服务
Generation 1 - Exadata Cloud at Customer (First Generation Cloud Machine), Oracle Cloud Infrastructure - Database Service, Oracle Database - Enterprise Edition, Oracle Database Exadata Express Cloud Service
适用于
All Users
概要
Goal
注意:在下面的图像和/或文档内容中,所使用的用户信息和环境数据表示来自Oracle示例模式,随Oracle数据库产品一起提供的公共文档或其他培训材料的虚拟数据。 与实际环境的任何相似之处,纯属巧合,绝不以任何方式提供。
为了本文档的目的,以下虚拟环境用作描述过程的示例:
Database names: SRC122, DEST122
Pluggable database name: PDB1
New container database name: DEST_DB
********
使用 Rman,Pluggable database (PDBs) 可以被传送到不同平台并插入到目标的 CDB 中,连同 PDB 的备份,Rman 也会 copy 必要的元数据(metadata) 到目标CDB 端。源 CDB 和目标 CDB 必须是相同的字节序(Endian).
下面的步骤展示了如何从 Solaris(Big Endian) 迁移一个关闭的 PDB 到 AIX (Big Endian) 平台。
SQL> select name,open_mode,platform_name from v$database;
Source:
NAME OPEN_MODE PLATFORM_NAME
--------- ------------- ------------------------
SRC122 READ WRITE Solaris[tm] OE (64-bit)
Destination:
NAME OPEN_MODE PLATFORM_NAME
--------- ------------ ---------------------------
DEST122 READ WRITE AIX-Based Systems (64-bit)
Solution
解决方案
1. 关闭源 PDB:
SQL> alter pluggable database PDB1 close immediate;
2. 备份源 PDB:
RMAN> backup for transport
2> unplug into '<path>/backup/PDB1_Metadata.xml'
3> format '<path>/backup/PDB1_BKP_%U'
4> pluggable database PDB1;
3. 用 SCP 传送备份集合和 PDB 元数据(metadata)到目标端:
4. 在目标端使用 dbms_pdb.check_plug_compatibility 检测是否可以 pluggin:
set serveroutput on
declare
c boolean;
begin
c:=dbms_pdb.check_plug_compatibility('<path>/backup/PDB1_Metadata.xml','PDB1');
if (c) then dbms_output.put_line('True');
else dbms_output.put_line('False');
end if;
end;
/
5. 在目标端还原 (Restore) PDB:
RMAN> restore using '<path>/backup/PDB1_Metadata.xml'
2> foreign pluggable database PDB1
3> format '<path>/oradata/DEST_DB/%U'
4> from backupset '<path>/backup/PDB1_BKP_02s9sj0u_1_1';
6. 在目标端打开 PDB1:
SQL> alter pluggable database PDB1 open;
备注:本文档涵盖了使用一致性备份进行PDB的跨平台迁移策略.为减少停机时间,迁移工作也可以采用归档情况下的非一致性备份,这种情况的备份是PDB 在open read write 情况下,采用 FOR TRANSPORT 以及 ALLOW INCONSISTENT进行的PDB level0的备份,然后,在pdb 关闭情况下通过 FROM SCN 和 UNPLUG INTO (12.2新的关键字) 进行的level 1的备份,同时也要得到PDB的元数据.
更多推荐


所有评论(0)