数据迁移技术文档

 

1.实现目标:

将主server:  10.0.125.64:50000/bak 中的test_a表的数据导入到远程server: 192.168.227.100:50000/fwap_db 中的test_b表

2.使用软件:putty

 

                             具体步骤

1.通过putty在远程server中用talent的方式进行登陆,然后在命令行的形式下进行操作

2. 编目远程数据库。

 

catalog tcpip node train1 remote 10.0.125.64 server 50000  

catalog database bak as c at node train1    

 

train1 可以自定义

c 可以自定义不过字符尽量要少,不然报异常

10.0.125.64是需要进行迁移的数据库所在的IP地址

5000主端口号

bak 是需要进行迁移的数据库

 

3. 设置数据库参数FEDERATE为YES 

 

   UPDATE DBM CFG USING FEDERATED YES

 

YES(更新前通过get dbm cfg来查看参数,如果可以支持联合数据库则不用执行该语句)

4. 重启实例

 

db2stop, db2start

(第三步没有执行的话则这步也不用执行)

5. 连接fwap_db数据库

   connect to fwap_db

6. 创建包装器

 

   CREATE WRAPPER DRDA

 

DB2 包装器是将 DB2 系列数据源添加至联合服务器这一大型任务的一部分。 

 

必须注册包装器才能存取 DB2 系列数据源。联合服务器使用包装器来与数据源通信以及从数据源中检索数据。包装器是作为一组库文件实现的。

7. 创建server

 

CREATE SERVER TRAINSAMPLE2 TYPE DB2/aix  VERSION '10.1.2' WRAPPER "DRDA" AUTHID "db2inst1" PASSWORD "admin" OPTIONS( ADD NODE 'TRAIN1',ADD DBNAME 'c')

为SERVER别名,可以自定义

db2inst1是bak数据库的用户名

admin  是db2inst1相关联的密码。

TRAIN1 是上面创建的节点名称

c   想要迁移的 DB2 数据库的别名。此别名是在您使用 CATALOG DATABASE 命令对数据库进行编目时定义的。此值是区分大小写的。

 

8. 创建用户映射

 

CREATE USER MAPPING FOR "db2inst1" SERVER "TRAINSAMPLE2" OPTIONS ( ADD REMOTE_AUTHID 'db2inst1', ADD REMOTE_PASSWORD 'admin')

指定您正在映射至在 DB2 系列数据源服务器中定义的用户标识的本地用户标  识。

db2inst指定您正在将 db2inst1 映射所至的 DB2 系列数据源服务器中的连接授权用户标识

为与db2inst相关联的密码

9. 映射远程表到本地数据库(为远程表创建一个昵称)

 

CREATE NICKNAME DB2INST1.N FOR TRAINSAMPLE2.DB2INST1.TEST_A

 

 

 

其中DB2INST1为模式名, n为本地昵称(类似表名), TRAINSAMPLE2为之前创建的服务器名, DB2inst1是远程数据库bak的模式名, test_a是bak中的表名。

 

 

10.使用insert into test_b select * from db2inst1.n 语句将bak中的test_a中的数据插入到 fwap_db中的test_b表中

11.好了,现在用db2 list tables就可以看到映射过来的表了,并且可以做db2admin相应权限的操作。(如查看,插入等)