2017-09-25 46 views
0

我在Ubuntu Linux开发环境中安装了Oracle 12c,并且安装了NLS_CHARACTERSET = WE8MSWIN1252。我想使用AL32UTF8编码的数据泵导入数据库。有没有一种方便的方法(除了重新安装Oracle)将Oracle完全切换为Unicode(无需担心保留现有数据),还是以某种方式“本地”使用Unicode编码导入我导入的模式?将空的Oracle 12c数据库转换为Unicode

+2

几乎总是要检查的第一件事是Oracle文档,在这种情况下,https://docs.oracle.com/database/121/NLSPG/ch11charsetmig.htm#NLSPG011我不确定您的“空“数据库。数据库永远不会是空的 - 不要忘记目录表,这些表总是存在的,而且还需要使用字符集。 – mathguy

+1

我建议你重新安装数据库。关于如何更改数据库字符集有很多不好的建议。我不得不管理的一些最繁忙的数据库是由于字符集转换错误而导致的。 (如果有帮助,你可以将责任归咎于Oracle的额外工作,尽管手册中说UTF8是最好的选择,但他们愚蠢的安装程序在12.2之前并未使用UTF8作为默认值。) –

+0

如果数据库为空这意味着)重新安装应该没什么大不了的。 –

回答

0

为了将数据库转换为AL32UTF8字符集,Oracle在版本12.1中引入了用于Unicode的数据库迁移助理(DMU)。

这是一个“方便”的工具,因为它是一个基于GUI的工具,可以指导您完成所有步骤,同时它可以被称为“复杂”,因为它需要单独的存储库。