12C cdb同pdb字符集不同,导致pdb无法启动
来源:互联网 发布:龙与地下城ol 知乎 编辑:程序博客网 时间:2024/06/01 14:54
前言
今天在升级一个11g实例到12C并转换为PDB插入已有的一个CDB的过程中,升级转换过程都没有问题,在最后启动pdb的时候,提示如下错误:
SQL> alter pluggable database zlemr open;
警告: PDB 已变更, 但出现错误。
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 ORCL READ WRITE NO 4 ZLEMR READ WRITE YES
问题分析
可以看到,ZLEMR实例虽然启动,但是只能在独占模式下启动,显然是存在问题的,我们通过alert日志查找更多的信息,发现启动时候,出现如下信息
alter pluggable database zlemr openThu Jun 23 14:32:21 2016***************************************************************WARNING: Pluggable Database ZLEMR with pdb id - 4 is altered with errors or warnings. Please look into PDB_PLUG_IN_VIOLATIONS view for more details.***************************************************************Opening pdb ZLEMR (4) with no Resource Manager plan activePluggable database ZLEMR opened read writeCompleted: alter pluggable database zlemr open
提示很清楚,叫我们去查询视图PDB_PLUG_IN_VIOLATIONS,该视图需要在CDB环境下去查询,否则没有内容,查询后发现如下错误
SQL> select name,type,message from PDB_PLUG_IN_VIOLATIONs order by name; NAME TYPE MESSAGE-------------- --------- --------------------------------------------------------------------------------ZLEMR ERROR Character set mismatch: PDB character set AL32UTF8. CDB character set ZHS16GBK.ZLEMR WARNING Database option DV mismatch: PDB installed version NULL. CDB installed version 1ZLEMR WARNING Database option OLS mismatch: PDB installed version NULL. CDB installed version
重点看ERROR提示,信息很明确,提示的是PDB的字符集为AL32UTF8,而CDB的字符集为ZHS16GBK,看来在12C的情况下,CDB必须同其包含的PDB保持一致的字符集,否则无法启动。
解决途径
我们知道数据库的字符集更改不是简单的操作,以前按照MOS的操作更改过字符集,看着更改成果,但是结果后续在应用过程中却出现一些莫名其妙的问题,总之我是不建议手工修改数据库的字符集,如果确实要修改,也建议用oracle提供的dum工具操作,具体自己研究。
如果实例应用确实无法统一字符集,建议多创建几个CBD实例,将不同的字符集数据库插入不同的CBD实例中,当然这也增加了管理的复杂度,但是谁叫应用要求这么多呢?如果有兴趣深入研究的可以看看
0 0
- 12C cdb同pdb字符集不同,导致pdb无法启动
- 12c pdb & cdb (1)
- oracle 12c pdb&cdb
- 12c中保持 启动CDB后PDB的状态
- 12c CDB和PDB启动和关闭操作
- 12c pdb基础-手工创建cdb和pdb
- ORACLE 12C之CDB与PDB
- 12c环境中的cdb与pdb
- oracle 12c pdb与cdb
- oracle 12c连接cdb&pdb
- 设置pdb随cdb启动
- Oracle 12c CDB 和PDB 数据库的启动与关闭 说明
- Oracle 12c 新特性--CDB与PDB
- Oracle 12C 将Non-PDB插入到CDB中
- 12C New Feature 之一 cdb 和pdb
- ORACLE 12C新特性——CDB与PDB
- Oracle 12c 如何连接到 CDB 和 PDB
- Oracle 12c 配置和修改 CDB 和 PDB 参数
- 打开新页面的想法,代替window.open()有时会被浏览器阻拦的
- CDISC SDTM EG domain学习笔记
- PL/SQL
- windows平台下使用Github(3 使用github客户端方式 上传和下载 )
- Java中finally块与return之间的执行顺序
- 12C cdb同pdb字符集不同,导致pdb无法启动
- android屏幕适配
- 【js】js判断数据格式
- 【SpringMVC学习10】SpringMVC对RESTfull的支持
- mysql性能优化
- Andriod中绘(画)图----Canvas的使用详解
- VIJOS-P1156
- 前端性能优化知识,包括css和js
- DNS原理入门