Oracle PDB的相关使用说明


  • 摘要
PDB pluggable database 
是Oracle12c以上的版本(Oracle18c.oracle19c) 新增加的一个特性.
他可以实现灵活插拔的方式进行PDB的创建于使用.

安装与创建部分

dbca或者是安装数据库时有一个选择, 可以使用nonPDB或者是PDB的模式
需要说明一下.
nonPDB就是原始的Oracle11g以及以前的模式, 就一个服务名可以直接使用.
PDB模式会有一个Oracle_SID与之前版本一样. 然后有一些PDB进行相关的处理
需要注意 PDB模式下必须选择PDB进行业务建库.
CDB的模式建库,会要求必须有c##开头的账户名称, 是无法使用的. 

设置开机启动

  • Oracle一开始设定PDB并不会随着CDB的启动而启动.
  • 建议增加一个 trigger 开机自动进行处理.
CREATE TRIGGER open_all_pdbs
   AFTER STARTUP ON DATABASE
BEGIN
   EXECUTE IMMEDIATE 'alter pluggable database all open';
END open_all_pdbs;
/

查看与切换

sqlplus / as sysdba
show pdbs;
# 可以查看所有的PDB
alter session set container=somePDB;
# 可以进行PDB的切换动作.
alter pluggable database somePDB open ;
# 可以单独打开某个PDB

删除与创建

第一步删除PDB
alter pluggable database somePDB close immediate ;
drop  pluggable database somePDB including datafile; 
# 注意需要先关闭,再进行删除,并且可以包含数据文件.
第二步创建PDB, PDB可以从空创建也可以文件转换或者是Clone来源
最简单的创建一个空的PDB 
alter system set DB_CREATE_FILE_DEST='/opt/oracle/oradata/ORA19C/Test' ;
create pluggable database test admin user test identified by Test1127 ; 
# 注意创建完成后 需要单独open一下才可以连接. 
# 需要注意 这种克隆方式的目录比较混乱. 可以使用file_name_convert的方式进行创建就会好很多了.
create pluggable database test admin user test identified by Test1127 file_name_convert=('source','target')
# 注意我这里就可以写为:
('/opt/oracle/oradata/ORA19C/pdbseed','/opt/oracle/oradata/ORA19C/Test')

克隆PDB-本地PDBClone

# 第一种方式先指定目录
alter system set DB_CREATE_FILE_DEST='/opt/oracle/oradata/ORA19C/Test' ;
create pluggable database test FROM ora19cpdb ;
# 第二种方式直接进行文件目录映射
CREATE PLUGGABLE DATABASE pdb2 FROM pdb1 
  FILE_NAME_CONVERT = ('/disk1/oracle/pdb1/', '/disk2/oracle/pdb2/')

# 注意与创建一样 指定DEST 文件目录会比较深. 但是convert目录比较简洁.

克隆PDB-非本地PDB

# 第一步创建必须的用户
alter session set container=test;
create user zhaobsh identified by Password;
grant dba,resource,connect,create pluggable database to zhaobsh ;
# 第二步创建DBLINK, 理论上需要创建高权限的用户作为dblink, 可以直接到PDB.
create public database link linkToSourcepdb
connect to zhaobsh identified by Password 
using '//10.110.136.86:1521/test'
# 第三步进行远程创建
alter system set DB_CREATE_FILE_DEST='/opt/oracle/oradata/ORA19C/test' ;
create pluggable database test FROM test@linkToSourcepdb ;
# 第四步 打开就可以使用.

插拔pluggable database

# 进入 sqlplus / as sysdba
关闭数据库
alter pluggable database test close immediate ;
unplug pdb 数据库. 
alter pluggable database test unplug into '/opt/oracle/oradata/ORA19C/Test/test.xml'
# 迁移数据库文件到别的数据库中: 
CREATE PLUGGABLE DATABASE zhaobsh AS CLONE USING '/opt/oracle/oradata/ORA19C/Test/test.xml'
NOCOPY TEMPFILE REUSE;
# 注意 我认为目录和文件权限尽量保持一致.

原文地址:http://www.cnblogs.com/jinanxiaolaohu/p/16789933.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性