database - 将 Oracle 12c 数据库的 NLS_CHARACTERSET 从 US7ASCII 更改为 AL32UTF8 的方法
问题描述
作为从 Oracle 11g 到 Oracle 12c 的数据库迁移的一部分,我们必须更改 NLS_CHARACTERSET 参数。目前 Oracle 11g 字符集为:WE8ISO8859P1,Oracle 12c 字符集为 US7ASCII。我们希望有 Oracle 12c NLS_CHARACTERSET -AL32UTF8。
我们的方法: 1)首先将12c的字符集更改为与11g相同,进行导入。此导入不会导致数据丢失,因为源和目标都具有相同的字符集。2)然后我们将 Charset 更改为 AL32UTF8,运行 CSSCAN,分析由于截断等各种因素导致的数据丢失。 3)最后运行 CSALTER 并处理列宽,截断等。
我在这里遇到的问题是: 1. 12c 不支持 CSSCAN,什么选项会有所帮助。DMU(Unicode 的数据库迁移实用程序)可以帮助我们吗?2. 12c 也不支持 CSALTER,那么有什么替代方案呢?3. AL32UTF8 是 WE8ISO8859P1 的超集,但是当我们针对 AL32UTF8 在 11g 上运行 CSSCAN 时,它给我们带来了一些数据丢失。为什么?4.还有比这更好的方法吗?请建议!提前致谢!
解决方案
推荐阅读
- html - 响应式居中 HTML5
- python - 使用 Python 抓取动态数据
- android - Android ACR122U NFC 集成
- javascript - 在 ng build angular 中运行严格编译
- tableau-api - Tableau Online 与 Tableau Server
- java - 何时使用acquireTokenByRefreshToken 与acquireToken
- javascript - 如何在 React 中向道具添加新属性?
- python - 将 Pandas DataFrame 中的嵌套字典转换为列表示
- python - 我可以使用一些客户端缓存在仪表板上进行“大数据”动态可视化吗?
- css - 动态内容(行)占用过多高度的表格