mysql 5.1数据库换为oracle11. 300左右表。数据在800M。
现在用Convert Mysql to Oracle 4.0工具可以成功迁移大部份,但有20多张表无法完成(数据类型问题吧)我的解决方法是想一个一个手工导1。mysql导出:mysqldump -uroot -p -t --default-character-set=gbk gs0314 gs_billcard --add-locks=false >D:\notTable\gs_billcard.sql2。修改表结构数据类型,直接在pl/sql里执行,表结构 创建成功。3。imp导入表的数据(导出用的gbk,imp前set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK):imp gs/gs123@fourwater  file=D:\notTable\gs_billcard_copy.sql log=D:\log\gs_billcard_copy_imp.log DATA_ONLY=Y;报错: 连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing optionsIMP-00037: 未知字符集标记
IMP-00000: 未成功终止导入

解决方案 »

  1.   

    IMP-00037 : Character   set   er   unknown 
    Cause:   The   export   file   is   corrupted. 
    Action:   Try   to   obtain   an   uncorrupted   version   of   the   export   file.  
             If   the   export   file is   not   corrupted,   report   this   as   an   
             Import   internal   error   and   submit   the   export file   
             to   Oracle   Customer   Support. 
    可能的原因为导出的文件已被破坏另外,保持字符集一致性
      

  2.   

    to liubei611
       mysql中导出emp格式。imp也一样的。都是报这错。
      

  3.   

    mysqldump -uroot -p -t --default-character-set=gbk gs0314 gs_billcard --add-locks=false >D:\notTable\gs_billcard.dmp 这样生成的。
    换了一种方法,ump导出sql
    在sqlplus 中@D:\D:\notTable\gs_billcard.sql 把里面的日期换成to_data()是可以执行数据插入的。。但我这个数据太多了。不可以一个一个改
      

  4.   

    -- 可以让你的 Oracle 能够远程访问My SQL,其余的工作就好办啦!http://topic.csdn.net/u/20100728/15/219af6d6-8784-47b0-b169-5e5d139778c2.html