db2数据建邦联-相当于Oracle数据库的dblink

/**169服务器邦联95服务器,从169访问95库的数据,下面配置都是在169执行,配置时需要用管理员配置,两台服务器都是

**/

(1)先与数据库建立连接

db2 connect to InstanceName user userName using passWord

(2)查看数据库管理器配置

db2 get dbm cfg

(3)查看是否允许邦联配置,默认是No

db2 update dbm cfg using federated yes;

(4)重启数据库

db2 force application all

db2stop force

db2start

--查看配置是否生效

db2 get  db cfg for updr---updr为数据库实例名

db2 list node directory  --查看节点信息

db2 list database directory   --查看存在的数据库别名

如果有之前建立的server,现在不需要了,可以删除

--drop server SEVER169_REPORT;

--drop server SERVER95_METABASE;

删除不需要的编目数据库

--drop UNcatalog db UPDR169;

删除不需要的编目节点

--drop uncatalog node UPDR_169;

-------------------------------------------------------

开始建立邦联

--------------------------------------------------------

--编目节点

db2 catalog tcpip node UPDR_169 remote 127.0.0.1 server 500001   ---注意:127.0.0.1 是你需要建立邦联的IP地址, 50001是对应数据库实例的端口号

--编目数据库,数据库别名不能有下滑线

db2 catalog database UPDR as UPDR169 at node UPDR_169 authentication server;

--刷新

db2 terminate

--测试利用别名是否能连上

db2 attach to UPDR_169 user userName using passWord;

--建立包装器,有时候执行命令不成功,可以通过db2控制中心,在联合书库库对象中,选择创建包装器,数据源选择db2包装器名根据需要设置个名称,不变也可以。然后点击确认,就可以

--window版本options后面不写也可以,默认是N。RIASDRDA_94是名字,不能重复。db2drda.dll windows平台是固定的,libdb2drda.so是linux平台的。

db2 create wrapper "DRDA" library 'db2drda.dll' options(add db2_fenced 'N');

--linux版本

db2 create wrapper DRDA library 'libdb2drda.so';

--创建server主要是和dbname相关,即数据库别名。和节点关系不大。

create server SERVERS169_REPORT TYPE DB2/UDB VERSION '9.7' wrapper DRDA authorization "report" password "report" options( node ‘UPDR_169’,dbname 'UPDR169');

--用户映射rias本地对于服务器标识(rias是169的用户),remote_authid remote_password 连接服务器的用户名和密码

create user mapping for rias server SERVER169_REPORT options (add remote_authid 'report' ,add reomote_password 'report');

--建立别名,用rias登录数据库,执行如下的语句

drop nickname REPORT_META_UPDR;

create nickname REPORT_META_UPDR for SERVER169_METABASE.metabase.REPORT_META;

原文地址:https://www.cnblogs.com/yehuili/p/9455726.html