Oracle数据迁移:从存储了中文的但字符集为WE8ISO8859P1数据库导入数据到字符集为ZHS16GBK的数据库
下称字符集为WE8ISO8859P1为源库,字符集为ZHS16GBK的数据库为目标库。
1.设置客户端字符集为WE8ISO8859p1(通过设置注册表的HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG为AMERICAN_AMERICA.ZHS16GBK来设置),然后导出源库至dmp文件
2.用有DBA权限的用户登录为normal强行修改目标库的实例字符集为WE8ISO8859P1:
create database character set WE8ISO8859P1
有出错信息(权限不足)不理
3.imp源库导出文件
4.重启目标库,并改回客户端字符集为ZHS16GBK,应用正常
主要原理是WE8ISO8859P1与ZHS16GBK的汉字编码一样,所以不需要转换就导入
1.设置客户端字符集为WE8ISO8859p1(通过设置注册表的HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG为AMERICAN_AMERICA.ZHS16GBK来设置),然后导出源库至dmp文件
2.用有DBA权限的用户登录为normal强行修改目标库的实例字符集为WE8ISO8859P1:
create database character set WE8ISO8859P1
有出错信息(权限不足)不理
3.imp源库导出文件
4.重启目标库,并改回客户端字符集为ZHS16GBK,应用正常
主要原理是WE8ISO8859P1与ZHS16GBK的汉字编码一样,所以不需要转换就导入