前言
本文记录在oracle 12C,通过pdb插拔的方式将单实例转换为rac环境出现的问题。
undo表空间被占用
问题描述
在迁移过程中,由于修改过源pdb的默认undo表空间,导致插入到rac环境的时候,出现undo表空间被占用的情况。
注:这里,使用的是local undo的模式
问题重现
切换至测试pdb
|
|
查询默认undo表空间,及数据文件位置
|
|
修改默认undo表空间
|
|
切换回CDB
|
|
拔出测试PDB
|
|
在rac下插入pdb
|
|
启动新插入的pdb
|
|
问题描述2
以上就重现了错误过程。
刚开始只是以为更改了默认undo表空间的名称,导致在插入oracle rac环境下的时候,oracle自动添加新的undo失败。(oracle 12c rac下,每个实例上的pdb使用的是不同的undo表空间)
针对以上猜想,尝试更改undo表空间为默认的名称后,重新插入,仍然失败
|
|
发现原因
通过对比修改前与修改后的拔出文件test.xml发现,修改后比修改前,在拔出文件中多了一行如下参数
|
|
由于这个参数的原因,导致pdb在插入的时候,统一把undo表空间指向为’UNDOTBS1’导致的。
解决方法就是,删除这一行数据即可。
问题解决
|
|