原库: oracle 10.2.0.1 x64数据库运行在windows 2003 x64

导入目录库:redhat linux5.8 x64运行oracle 10.2.0.5 x64 数据库

两边的数据库字符集都是zhs16gbk

现在要进行数据迁移

我的操作是在windows上用exp把表导出为6个dmp文件:

exp df1500/oracle@75 file="e:\75_df1500_1,e:\75_df1500_2,e:\75_df1500_3,e:\75_df1500_4,e:\75_df1500_5,e:\75_df1500_6" filesize=20g log="e:\df1500.log" buffer=40960000 feedback=10000

然后把6个dmp文件上传到Redhat服务器上,在redhat服务器上执行imp操作导入数据。

出现的问题:有个别表是用中文命名的,导入后表名变成???不可使用

解决办法:修改oracle用户环境变量,添加如下参数(前提安装好中文支持)

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

最后执行imp操作重新导入后表名又变成了中文

imp df1500/oracle file='/oracle_sde/75_df1500_1,/oracle_sde/75_df1500_2,/oracle_sde/75_df1500_3,/oracle_sde/75_df1500_4,/oracle_sde/75_df1500_5,/oracle_sde/75_df1500_6' buffer=40960000 log=/oracle_sde/df1500.log,filesize=20G feedback=10000 full=y