克隆非CDB数据库

可以使用3种方法通过现存的非CDB数据库,创建可插拔数据库:

1.使用DBMS_PDB软件包生成元数据,然后使用SQL命令CREATE PLUGGABLE DATABASE创建可插拔数据库;

注意:在使用DBMS_PDB软件包将非CDB数据库转换为可插拔数据库时,该非CDB数据库必须是使用ORACLE 12C或更高的版本创建的

2.数据泵(使用可传输表空间功能);

3.GOLDENGATE复制软件

本文使用第一种方法:

第一步:

应该先将非CDB数据库切换到只读模式

SQL> startup mount;

SQL> alter database open read only;

BEGIN

DBMS_PDB.DESCRIBE(pdb_descr_file=>'/u02/app/oracle/xml/ncdb.xml');

END;

/

SQL>shutdown immediate;

第二步:

连接CDB数据库,检查这个非CDB数据库,是否与将要容纳它的CDB兼容,运行下面

SET SERVEROUTPUT ON

DECLARE

hold_var boolean;

begin

hold_var :=DBMS_PDB.CHECK_PLUG_COMPATIBILITY('/data/ncpdb.xml','TESTA');

if hold_var then

dbms_output.put_line('YES');

else

dbms_output.put_line('NO');

end if;

end;

/

如果这个两个数据库之间没有兼容性问题,这段代码会显示YES,否则为NO.

查询PDB_PLUG_IN_VIOLATIONS视图的内容,可以详细了解这两个数据库不兼容的原因。

使用下面的SQL命令,可以通过非CDB创建可插拔数据库。

CREATE PLUGGABLE DATABASE TESTA

USING '/u02/database/ncpdb.xml'

COPY

FILE_NAME_CONVERT =('/data/app/oracle/oradata/testa/datafile/','+DATA/TESTDB/TESTA/DATAFILE/');

Pluggable database created

第三步:

使用SYS用户连接新建的可插拔数据库:

$sqlplus sys/oracle@'testdb1:1521/testa' as sysdba

SQL>@?/rdbms/admin/noncdb_to_pdb.sql

然后打开

SQL>startup

就可以了

oracle cdb能存数据嘛,ORACLE 12C 非CDB迁移CDB之克隆非CDB数据库相关推荐

  1. oracle导出对象和数据,浅析Oracle对象和数据的导入导出

    对于Oracle对象和数据的导入导出,我们会用到一些小工具.以前我们一般都是使用PL/SQL Developer来实现,但是PL/SQL Developer在导出.导入数据时有两个问题: 1.要把表数 ...

  2. oracle sql 输出,将数据从Oracle SQL Developer导出到Excel .xlsx

    将数据从Oracle SQL Developer导出到Excel .xlsx 我有一个小型项目,需要将Oracel SLQ Developer的数据导出到Excel(使用SLQ Developer中的 ...

  3. c 将txt导入oracle,如何把文本数据导入Oracle中?

    1.首先,服务器端的侦听服务必须已经开启. 测试方法:Dos 下输入 C:\>sqlplus username/password@serviceName 2.然后使用 Oracle 的 sqll ...

  4. oracle两个表数据比较,oracle数据库两表数据比较

    1 引言 在程序设计的过程中,往往会遇到两个记录集的比较.如华东电网PMS接口中实现传递一天中变更(新增.修改.删除)的数据.实现的方式有多种,如编程存储过程返回游标,在存储过程中对两批数据进行比较等 ...

  5. Oracle中用system存数据,【学习笔记】Oracle表空间 数据存放system表空间影响数据库性能...

    天萃荷净 分享一篇,关于Oracle数据库system表空间研究,不能将用户数据存放在system表空间的原因 为什么不建议客户把业务数据存放到SYSTEM表空间中,一直想通过试验的数据来说明问题,今 ...

  6. oracle 定时清理表数据,关于Oracle存储过程和调度器实现自动对数据库过期数据清除的问题...

    简介 数据库中的某些数据不一定要长期保存,例如:日志等数据.当保存一定时间后,系统允许删除所以系统需要定期删除那些已经过期的数据. 实现原理 1张表(SYS_DBA_CONFIG).1个Job定时器( ...

  7. oracle竖着显示数据,2020 Oracle、mysql经典例题一(如何把表格数据竖着排列)

    2020 Oracle.mysql经典例题一(如何把表格数据竖着排列) 2020 Oracle.mysql经典例题一(如何把表格数据竖着排列) Oracle.mysql经典例题--如何把表格成绩竖着排 ...

  8. oracle出错如何备份数据,备份oracle数据库出错

    备份oracle数据库出错 input datafile fno=00027 name=/index/neas_standard01.dbf input datafile fno=00035 name ...

  9. oracle 判断表存在建表,oracle创建表之前判断表是否存在,如果存在则删除已有表...

    oracle创建表之前判断表是否存在,如果存在则删除已有表 在sqlserver中,有if exit()这样的语句,但是在oracle中却没有.如果直接使用drop table那么如果表不存在会报错, ...

  10. oracle索引块和数据块,Oracle中,如何确定热快是数据块还是索引快?

    飞总说的很对 在x$bh中就可以看出来   (只有sys用户可以查  并且x$开头的表在dict中不可以查到)每一个数据块在被读入buffer cache时,都会先在buffer cache中构造一个 ...

最新文章

  1. 知乎联合清华:开放国内最大个性化推荐实际交互数据集
  2. CVPR'21 | Involution:超越convolution和self-attention的神经网络新算子
  3. 获取会话的连接和断开事件
  4. Stable Region Correspondences Between Non-Isometric Shapes
  5. 设置Linux用户无口令登陆方式
  6. 数据分析岗位面试必备
  7. 如何告别脂肪肝?要注意什么?
  8. thinkphp5 insertAll 插入的数据列不对 对应关系不对
  9. Qt qss 动态属性-不同条件不同显示
  10. unity 入门学习之(二)脚本学习
  11. mysql多客户端数据不同步,一个关于客户端和数据库版本不一致的问题
  12. java实现有限自动机_Java 实现一个非确定性有限自动机(NFA)
  13. 【ARM 嵌入式 C 入门及渐进 3 -- GCC __attribute__ 使用】
  14. 打字 html,html - 在线打字测试(dazi.kukuw.com)
  15. 如何在Linux上查看历史命令
  16. 【CSS3】text-align属性
  17. 11款面向Linux系统的备份工具,超实用!
  18. openai的gym baseline spiningup 深度强化学习环境安装 手撸gym环境demo
  19. HTML+CSS实战(一)——导航条菜单的制作
  20. 交易老手交易老手的最终境界:坚持做正确的事情,不要在乎一笔输赢

热门文章

  1. 内核木马:Win32.Rootkit.Rogue.Tzim查杀
  2. 重磅!100位校高校教师晒工资,详细晒,全国各地!要进高校的博士们参考
  3. 什么是IT行业? IT行业都有哪些职位?
  4. 带你Dart带你Diao之类(二)
  5. 阿里巴巴宣布5.4亿战略投资中国万网==互联网电子商务绑定互联网基础服务为手机电子商务开拓铺路...
  6. html 获取ie浏览器,用C#从,IE浏览器中获取HTML文档
  7. 【数学】线性增长,指数增长,对数增长,幂增长
  8. springboot validation 统一返回错误信息
  9. Invenio 数字图书馆框架
  10. 人工智能如何自我进化