ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 使用联邦数据库将oracle表迁移到DB2(9.7)中的脚本说明

使用联邦数据库将oracle表迁移到DB2(9.7)中的脚本说明

原创 Linux操作系统 作者:nicole_fairy 时间:2010-01-06 14:10:00 0 删除 编辑

由于兄弟项目组要测试,需要将oracle中的表迁移到db2中,操作步骤如下:

#1 在windows数据库中建联邦数据库服务器\用户映射
connect to sample
CREATE WRAPPER DRDA LIBRARY 'db2drda.dll';--创建DB2包装器
CREATE WRAPPER NET8 LIBRARY 'db2net8.dll';--创建Oracle包装器
CREATE SERVER BSM1 TYPE DB2/UDB VERSION '9.7' WRAPPER DRDA AUTHID "bsm1" PASSWORD "bsm1" OPTIONS( ADD DBNAME 'BSM1');--创建db2数据库的服务器定义
CREATE SERVER IBIS_48 TYPE ORACLE VERSION '10g' WRAPPER NET8 OPTIONS( ADD NODE 'IBIS_48');--创建oracle数据库的服务器定义
CREATE USER MAPPING FOR ADMINISTRATOR SERVER BSM1 OPTIONS ( ADD REMOTE_AUTHID 'bsm1', ADD  REMOTE_PASSWORD 'bsm1') ;--创建db2的用户映射
CREATE USER MAPPING FOR ADMINISTRATOR SERVER IBIS_48 OPTIONS ( ADD REMOTE_AUTHID 'bsm5', ADD  REMOTE_PASSWORD 'bsm5') ;--创建oracle的用户映射

#2 在windows数据库中建昵称
DB2 CREATE NICKNAME BSM1.TEP0002 FOR BSM1.BSM1.TEP0002
--------
DB2 CREATE NICKNAME BSM5.TEP0002 FOR IBIS_48.BSM5.TEP0002

#3 迁移数据
--把数据表先truncate下
db2 connect to bsm1 user bsm1 using bsm1
db2 truncate table TEP0002
--insert进来oracle数据    
db2 connect to sample
db2 INSERT INTO BSM1.TEP0002 SELECT * FROM BSM5.TEP0002
db2 commit(如果需要insert很多个表,需要每个insert后执行一个commit,否则会把DB2的buffer用光而报错)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12125877/viewspace-624462/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 忐忑
请登录后发表评论 登录
全部评论

注册时间:2008-06-01

  • 博文量
    32
  • 访问量
    126897