暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

创建PDB方法(六)

原创 刘朝阳 2020-08-21
644

拔出本地pdb,插入到远程另一个cdb中
从本地cdb1211拔出PRODPDB
$ export ORACLE_SID=cdb1211
$ sqlplus / as sysdba
SYS@cdb1211> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED


     2 PDB$SEED                       READ ONLY  NO
     3 PRODPDB                        MOUNTED

SYS@cdb1211>

拔出 prodpdb
SYS@cdb1211> alter pluggable database prodpdb unplug into ‘/home/oracle/prodpdb.xml’;
SYS@cdb1211> col pdb_name for a10
SYS@cdb1211> select pdb_name,status from cdb_pdbs where pdb_name=‘PRODPDB’;
PDB_NAME STATUS


PRODPDB UNPLUGGED
SYS@cdb1211> drop pluggable database prodpdb keep datafiles;

远程创建要插入pdb的数据文件的目录:
mkdir /u01/app/oracle/oradata/cdb1211/prodpdb

将元数据文件/home/oracle/prodpdb.xml拷贝到远程
将数据文件拷贝到远程相同的目录,最好跟xml文件一致,这样不用修改xml文件
scp /u01/app/oracle/oradata/cdb1211/prodpdb/* 10.18.3.178:/u01/app/oracle/oradata/cdb1211/prodpdb
scp /home/oracle/prodpdb.xml 10.18.3.178:/home/oracle/prodpdb.xml

检查兼容性
使用 DBMS_PDB.CHECK_PLUG_COMPATIBILITY 函数检查拔出的 prodpdb 与 cdb1 是否
兼容
SET SERVEROUTPUT ON
DECLARE
compatible CONSTANT VARCHAR2(3) :=
CASE DBMS_PDB.CHECK_PLUG_COMPATIBILITY(
pdb_descr_file => ‘/home/oracle/prodpdb.xml’,
pdb_name => ‘PRODPDB’)
WHEN TRUE THEN ‘YES’
ELSE ‘NO’
END;
BEGIN
DBMS_OUTPUT.PUT_LINE(compatible);
END;
/

返回 YES 满足兼容性要求

插入 cdb1
创建新的pdb5目录:
mkdir /u01/app/oracle/oradata/cdb1/pdb5
create pluggable database pdb5 using ‘/home/oracle/prodpdb.xml’ file_name_convert=(’/u01/app/oracle/oradata/cdb1211/prodpdb’,’/u01/app/oracle/oradata/cdb1/pdb5’);

或者使用源端的原始路径:
SYS@cdb1> create pluggable database pdb5 using ‘/home/oracle/prodpdb.xml’ nocopy;
nocopy : 使用原来路径下数据文件

open 打开插入的 pdb5
SYS@cdb1> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED


     2 PDB$SEED                       READ ONLY  NO
     3 PDB1                           MOUNTED
     5 PDB5                           MOUNTED

SYS@cdb1>
SYS@cdb1>alter pluggable database pdb5 open;
SYS@cdb1> col file_name for a60
SYS@cdb1> select file_name from cdb_data_files where con_id=5;
FILE_NAME

/u01/app/oracle/oradata/cdb1/pdb5/system01.dbf
/u01/app/oracle/oradata/cdb1/pdb5/sysaux01.dbf
/u01/app/oracle/oradata/cdb1/pdb5/undotbs01.dbf
/u01/app/oracle/oradata/cdb1/pdb5/users01.dbf

SYS@cdb1>

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论