首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > IBM DB2 >

db2 一个数据移植的有关问题

2012-12-28 
db2 一个数据移植的问题问题是这样的:我在linux上安装了db2(9.0 version)数据库,其中创建了2个数据库 dbte

db2 一个数据移植的问题
问题是这样的:
我在linux上安装了db2(9.0 version)数据库,其中创建了2个数据库 dbtest1 和 dbtest2 。
现在我想把dbtest1的数据往dbtest2里移植,现在我创建了有一个用户叫 dbname ,
同时都可以连接数据库dbtest1和数据库dbtest2。
那我需要怎么样做才能实现把test1的一个表,查询出来,然后往test2里移植呢?

因为2个表的数据库结构不一样,需要调整部分字段才可以。
网上有说用link的形式,但是我实验了,老是弄不好。


希望各位侠客们能帮忙解决下。谢谢。最好能说说具体步骤。
[解决办法]
1、用最基本的export import 方法
2、使用联邦的方法 将这两个数据库联邦 就可以像使用一个数据库的方法来操作这两个表
[解决办法]

引用:
1、用最基本的export import 方法
2、使用联邦的方法 将这两个数据库联邦 就可以像使用一个数据库的方法来操作这两个表


问题是我现在用export 方法的话,2个数据库的结构存在差异。不容易移植啊。

[解决办法]
创建数据库联邦,这样就可以直接insert。。。select。。。
[解决办法]
引用:
创建数据库联邦,这样就可以直接insert。。。select。。。

问题我现在就是想这样做。但是从网上找的方法,没有一个实验成功的。
[解决办法]
http://www.ibm.com/developerworks/cn/data/library/techarticles/0203haas/0203haas.html

联邦我用过,推荐你上面这个网址
[解决办法]
引用:
http://www.ibm.com/developerworks/cn/data/library/techarticles/0203haas/0203haas.html

联邦我用过,推荐你上面这个网址

谢谢了。但是我根据那个里面的操作。还是不能完成。能不能把你以前用过的。方法、经验给我传授下?
再次谢谢。
[解决办法]
这上面的步骤已经够详细了吧,每一步都有了,还有示例代码,我总结的没他好。
你哪个步骤出问题了?
[解决办法]
你是怎样做 的,提示什么
[解决办法]
1、建立包装器
连接到本地数据库 db2 connect to test1;
create wrapper DRDA;
2、建立服务器
create server yj type  db2/udb  version 9.7  wrapper drda authorization "db2inst1"  password "db2inst1" options(node 'node1',dbname 'bb')

这里面的参数我都不明白什么意思。
3、用户映射
db2 "create user mapping for "db2inst1"   server yj options (add remote_authid 'db2inst1' ,add remote_password 'db2inst1')"
4、建立别名
 db2 "create nickname  yj_test for yj.db2inst1.test"
CREATE NICKNAME remote_t_usertable FOR remoteserver_195.db2inst1.t_usertable;
5、连接到本地数据库
db2 conncet to test1
 db2 "select * from db2inst1.yj_test"
根据这个步骤来做。问题是第2部就走不下去了。

 



[解决办法]

http://www.ibm.com/developerworks/cn/data/library/techarticles/0304lurie/0304lurie.html
有说明
[解决办法]
为远程数据库创建“包装器”
每次创建这个时候都出差。
db2inst1@hfmpServer:~> db2 CREATE WRAPPER "INFORMIX" LIBRARY 'db2informix.dll'; 
DB21034E  The command was processed as an SQL statement because it was not a 
valid Command Line Processor command.  During SQL processing it returned:
SQL0104N  An unexpected token "CREATE WRAPPER INFORMIX LIBRARY" was found 


following "BEGIN-OF-STATEMENT".  Expected tokens may include:  "<space>".  
SQLSTATE=42601
[解决办法]
为什么创建“包容器”的时候很多地方都写的不一样呢?
有这样写 CREATE WRAPPER "INFORMIX" LIBRARY 'db2informix.dll';
有这样写的:create wrapper DRDA;
但是前面如果不加db2 的话,命令就不会别识别。
[解决办法]
上述是邦联INFORMIX
下面是邦联DB2的
http://loveseaside.iteye.com/blog/663110
[解决办法]
create server appdb type db2/udb bersion '9.1' wrapper DRDA authid "hfmpdb" password "join" options( add databasename 'appdb');
这个创建的时候老是提示语法错误。
-bash: syntax error near unexpected token `('
为什么呢?搞了一天了。一点进展都没有。一点头绪都没有。
各位大侠。帮帮忙吧。
[解决办法]
你是在命令行下输入的?
[解决办法]
对啊。
因为是linux系统下的。我用telnent 登录的系统,然后用db2instr1的用户来创建的这些。
到这个一步创建服务的时候就不能用。提示命令有错误。

热点排行