如何把orcale的数据导入到DB2

有时候因为项目的原因我们需要从oracle等数据库的数据转移到DB2中,给我们造成很大的麻烦,昨天忙了一整天发现一个不错的工具,轻松简单还可以支持把数据一并倒入。据说DB29.7以上会有一个更好的工具,那个我没尝试。我使用的是IBM的MTK,下面是MTK的详细信息和下载地址:
http://www.ibm.com/developerworks/cn/ondemand/migrate/db.html
上面有MTK的介绍以及对各个数据的支持和文档,不过是英文的,不过没关系,你可以下载工具后按照下面网址的操作
http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0411yip/#author1
注意:在最后一步的时候可以把倒入数据的选项勾选上就能实现;
可能遇到的问题:我是从oracle10i-》db2V8,db2的会在odbc那里自动帮你配置,但是oracle没有,需要你去手动配置,否则在最后一步会提示你ODBC的错误信息
步骤:控制面板-》管理工具-》数据源-》用户DSN,添加一个for oracle的,据说如果是win7的话需要在系统DSN中添加;
运行完后可以在安装时指定的目录查看report的文件,里面会介绍状态;

我导入后出现过-668错误,下面是解决方法:
解决方法: SET INTEGRITY FOR table  IMMEDIATE CHECKED
执行这条命令 错误解决
如果 IMMEDIATE CHECKED不行就改成 IMMEDIATE UNCHECKE
例子:SET INTEGRITY FOR SCHEMA.TABLE IMMEDIATE CHECKED
成功的话数据还是会保存如果你oracle中有原始数据,如果还是搞不定下面一招可以试试:
db2 "load from empty.ixf of ixf terminate into table"
我试过,执行完后可以查询但是数据丢失,
网上也有朋友介绍使用:reorg table XXX.TABLE,大家可以尝试下。

关于MTK的启动其实可以在用户-》所有程序中-》mtk启动
也可以自己command启动,方法如下
1. set path=%path%;C:\Program Files\IBM\SQLLIB\java\jdk\bin
2. cd c:\mtk
3. MTKMain.bat -mtk

你可能感兴趣的:(oracle,IBM,db2,配置管理,MTK)