oracle cdb to no cdb,【CDB】怎样转换non-CDB to CDB
一、
规划
Non-CDB name: orcl
CDB name: orclcdb
version: 12c or later
二、
开始转换
1.
创建一个CDB
形式的数据库
可以选择使用DBCA
或脚本创建
2.
只读方式打开数据库(non-CDB
)
SQL> shutdown immediate;
SQL> startup open read only;
3.
生成xml
文件
这个xml
文件可以理解为
non-CDB
的模板文件
执行以下语句
SQL>
BEGIN
DBMS_PDB.DESCRIBE(pdb_descr_file => '/
home/oracle
/1
9
cNonPDB.xml');
END;
/
4.
关闭数据库(non-CDB)
SQL> shutdown immediate;
为了保持元数据文件和数据文件的一致性,不要再次打开数据库,否则会报错
ORA-65139: Mismatch between XML metadata file and data file
5.
在目标CDB
中检查兼容性
$ export ORACLE_SID=orclcdb
$ sqlplus / as sysdba
SET SERVEROUTPUT ON;
DECLARE
compatible CONSTANT VARCHAR2(3) := CASE
DBMS_PDB.CHECK_PLUG_COMPATIBILITY(pdb_descr_file =>
'
/
home/oracle
/1
9
cNonPDB.xml
')
WHEN TRUE THEN 'YES'
ELSE 'NO'
END;
BEGIN
DBMS_OUTPUT.PUT_LINE(compatible);
END;
/
执行上述过程如果报错,需要检查
PDB_PLUG_IN_VIOLATIONS
视图
SQL> col cause for a20
SQL> col name for a20
SQL> col message for a35 word_wrapped
SQL> select name,cause,type,message,status from PDB_PLUG_IN_VIOLATIONS where name='
orcl
';
会得到类似下面的结果
ERROR PSU bundle patch 1 (PSU Patch 12345): Installed in the CDB but not in the PDB.
处理过程请参考MOS
Note 1935365.1
6.
在CDB
中创建一个
PDB
$ export ORACLE_SID=orclcdb
$ sqlplus / as sysdba
SQL>
CREATE PLUGGABLE DATABASE PDB
1
USING '/
home/oracle
/1
9
cNonPDB.xml' COPY FILE_NAME_CONVERT = ('/u01/app/oracle/oradata/
orcl
/', '/u01/app/oracle/oradata/
ORCLCDB
/
PDB1
/');
7.
切换到PDB
容器,运行转换脚本
$ export ORACLE_SID=orclcdb
$ sqlplus / as sysdba
SQL> alter session set container=pdb1;
SQL>
@$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql
8.
启动PDB
,检查
open mode
SQL> alter pluggable database pdb1 open;
SQL> select name,open_mode from v$database;
NAME OPEN_MODE
----- ----------
PDB1
READ WRITE
1 row selected
---- end ----
oracle cdb to no cdb,【CDB】怎样转换non-CDB to CDB相关推荐
- oracle 分区表转换,Oracle 12.2之后ALTER TABLE .. MODIFY转换非分区表为分区表
Oracle 12.2之后ALTER TABLE .. MODIFY转换非分区表为分区表 发布时间:2020-08-08 06:57:47 来源:ITPUB博客 阅读:77 作者:你好我是李白 说明 ...
- oracle 数字大写转换,oracle数据库使用游标实现大写数字转换成小写数字
项目遇到需求,需要将大写数字转换成小写.代码如下:declare t_zl varchar2(100); t_ts varchar2(100); t_l number; hh varchar2(100 ...
- 转:Oracle中的日期和字符串互相转换
TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 ...
- oracle cbo 查询展开,Oracle CBO几种基本的查询转换详解
在执行计划的开发过程中,转换和选择有这个不同的任务:实际上,在一个查询进行完语法和权限检查后,首先发生通称为"查询转换"的步骤,这里会进行一系列查询块的转换,然后才是"优 ...
- ORACLE 中为什么要把列名都转换成大写字母?
以前在使用 JAVA 开发应用程序的时候,都是使用 ORACLE 数据库,在 JAVA 中对 ORACLE 数据表进行查询返回数据后,保存在一个 Vector 列表中,每一个元素表示一行,每一行又使用 ...
- oracle非常量不能用于privot_Oracle 行列转换函数pivot、unpivot的使用(二)
一.行转列pivot 关键函数pivot,其用法如下 pivot(聚合函数 for 列名 in(类型)) select * from table_name pivot(max(column_name) ...
- 深度解析:Oracle数据库SYSDATE到PostgreSQL数据库最佳转换
本文讨论了在Amazon RDS和Aurora 中使用PostgreSQL数据库时,与日期/时间相关的函数,并确定PostgreSQL数据库里的clock_timestamp()函数与Oracle中的 ...
- oracle 日期改字符格式_oracle 日期转换格式
在网上看见不少oracle新学者对oracle的时间格式很烦,经常是设计了一个带时间字段的表之后,向表插入数据失败.回想起自己刚开始学习oracle时,也对这个时间格式摸不着头脑,虽然是小小的问题,高 ...
- oracle显示上午下午,如何把时间转换成带有上下午字样的格式?
转换干嘛??前台传入以指定格式,用to_date或者前台语言比如java,可以转入oracle的日期类型插入 从数据库中取出,可以to_char格式化, to_char(date,fmt,param) ...
- Oracle中的日期和字符串互相转换以及格式化
TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 显示值:07yyy three digits 三位年 显示值:007yyyy ...
最新文章
- 64位ubuntu安装32位编译器
- 弹性方法计算内力例题_弹性力学重要公式汇总,还不快来强记一波【含参考答案】...
- 计算机电缆和控制电缆区别,动力电缆和控制电缆有啥区别?
- break stop java_在Java中使用break退出循环是不好的做法吗?
- windows局域网文件共享的使用
- [渝粤教育] 西南科技大学 土木工程施工 在线考试复习资料(1)
- Linux服务器时间同步那些事
- 阿里云OSS图床搭建教程
- python中ix用法_Python:Pandas中的ix用法详细解释
- 颈椎病及腰椎间盘突出病因病理
- 美丽小猪Java基础笔记02【小美女程序猿诞生日记 之 java学习笔记】
- 快速排序和二分查找时间复杂度详解
- Linux下常用的shell命令记录
- Java异常处理最佳实践及陷阱防范
- 二维彩虹产品功能更新(H5编辑二维码)
- ivue-admin Table单元格内换行问题
- python 已知三角形的三条边,通过反三角函数计算出三角形的三个角;其中用到math的引用;
- 前端技能树,面试复习第 1 天—— 建立前端知识框架 | HTML 知识考察点
- android如何保证service不被杀死
- CPU性能测试基准(Dhrystone)学习
热门文章
- You have to remove (or rename) that container to be able to reuse that name.
- 微信域名防封的新知识
- 巴塞尔协议中的计算公式_十分钟读懂巴塞尔协议
- sd卡 linux分区教程,《电脑端SD卡分区 小白教程 支持ext swap 分区无需linux环境、》.docx...
- 计算机动画电影英语翻译,“动画电影”英语怎么说
- DIV+CSS布局-PxCook工具的简单使用
- 10.12 SNK中国 游戏客户端 二面40min
- 在nginx中编写html,码头不会在nginx html根目录中创建文件夹
- Golang的反射机制(The Laws of Reflection)
- ThinkPHP5和ThinkPHP6的区别