由于工作的需要,要将10G库中的数据导出,然后导入11G库中。偷懒使用plsql工具(windows平台)导出数据在导入11G库的时候报如下错误:

IMP-00037: Character set marker unknown


      在网上搜了一下有很多关于这个错误的解决方法,是由于客户端与服务端字符集不一致导致数据导入失败。

      查看数据库字符集为US7ASCII,然后远程登录到数据库服务器。修改系统环境变量NLS_LANG=AMERICAN_AMERICA.US7ASCII。然后在数据库所在服务器运行exp命令导出所需的的信息,然后使用imp命令导入数据,可以正常导入数据。不会再报以上错误信息。

exp命令导出库文件的字符集是以客服端字符集为准,不和dbserve的字符集一致,所以再每次导出数据之前,应该设置客户端字符集与服务端字符集一致来导出数据,这样就可以避免不必要的麻烦。