资讯专栏INFORMATION COLUMN

DB2联邦查询配置

IT那活儿 / 1029人阅读
DB2联邦查询配置

点击上方“IT那活儿”,关注后了解更多内容,不管IT什么活儿,干就完了!!!

 

1

需求:使用一条SQL语句查询多个数据源中的数据。
在主机1数据库中连接查询主机2数据库中数据。 

2

环境准备
主机1:192.168.1.21  DB1
主机2:192.168.1.22  DB2
数据库版本:V11.5 

3

在两台主机实例下创建两个不同的数据库,并在不同的数据库下创建不同的表
DB201:
db2 "create db db1 on /db2data/db1 using codeset UTF-8 territory CN"
db2 connect to db1
db2 "
create table db1_t1 (name varchar(50))"
db2 "
insert into db1_t1 values (aaa)"
db2 "
insert into db1_t1 values (bbb)"
db2 "
insert into db1_t1 values (ccc)"
db2 commit;
db2 "
select * from db1_t1"
NAME
--------------------------------------------------
aaa
bbb
ccc
3 record(s) selected.
DB202:
db2 "create db db2 on /db2data/db2 using codeset UTF-8 territory CN"
db2 connect to db2
db2 "
create table db2_t2 (name varchar(50))"
db2 "
insert into db2_t2 values (111)"
db2 "
insert into db2_t2 values (222)"
db2 "
insert into db2_t2 values (333)"
db2 commit;
db2 "
select * from db2_t2"
NAME
--------------------------------------------------
111
222
333
3 record(s) selected.

4

启动联邦功能
两个库要打开联邦,断开所有连接,重启生效。
db2 update dbm cfg using FEDERATED YES
db2 force applications all
db2stop force
db2start
db2 get dbm cfg |grep FEDERATED

5

DB2在本地配置连接远程数据库节点
我主机1上的db1数据库要去连接主机2上的db2数据库。
配置要连接的数据库实例信息(在DB1上配置连接DB2)。
db2 catalog tcpip node db2 remote 192.168.1.22 server 50000
db2 catalog db db2 at node db2
db2 connect to db2 user db2inst1 using db2inst1
db2 list db directory –查看数据目录信息,能识别到remote库。
 

6

创建wrapper包
连接本地数据库DB1,在DB1上配置:
db2 connect to db1
db2 create wrapper drda

7

创建连接对方数据库的server服务定义
在本地DB1服务器操作:
db2 "create server db2srv type DB2/UDB version 11.5 wrapper 
"DRDA" authorization "db2inst1" password "db2inst1" options( NODE db2, DBNAME db2)"

 

8

创建用户映射mapping
在本地DB1服务器操作:
db2 "create user mapping for "db2inst1" server db2srv options (remote_authid db2inst1,remote_password db2inst1)"

 

9

创建联邦关系表(别名表)
在本地DB1服务器操作(本地数据库上不能有这个别名表db2_t2_bm)。
db2 "create nickname db2inst1.db2_t2_bm for db2srv.db2inst1.db2_t2"
--如果两个数据库中还有更多的表要做联邦查询:
--db2 "create nickname db2inst1.表3 for db2srv.db2inst1.别名表"

 

10

测试使用联邦查询功能
在本地DB1主机上操作查询。
---能查到主机2上的数据:
db2 "select * from db2inst1.db2_t2_bm ";

此时在主机2的数据库表中新增数据:
db2 connect to db2
db2 "insert into db2_t2 values (bbb)"
db2 "
insert into db2_t2 values (ccc)"
可以看到联邦查询的结果:
db2 "select * from db2inst1.db1_t1 a1,db2inst1.db2_t2_bm a2 where a1.name=a2.name";




END




本文作者:戚传海

本文来源:IT那活儿(上海新炬王翦团队)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129512.html

相关文章

  • 跨集群服务——如何利用Kubernetes 1.3实现跨区高可用

    摘要:跨集群服务能够分布在不同的地理位置,使得混合和多云成为可能,相对于单一集群多可用区部署,更好地保证高可用。注例子中,我们利用谷歌容器引擎提供的集群,在该平台上,你可以把部署到想要的地区。 编者按:这篇文章是关于Kubernetes 1.3新功能的一系列深入文章的一部分。本文是第七篇。 用户使用Kubernetes 对生产环境上的部署进行弹性伸缩,同时我们听到一个明确的声音:希望跨区域、...

    wind3110991 评论0 收藏0
  • 号外:友户通支持企业自有用户中心啦

    摘要:针对这种情况,友户通特定开发了联邦用户中心来支持企业的自有用户中心。友户通支持通过协议使用企业内部的支持协议的用户中心账号进行登录。友户通目前支持标准协议以及友户通自定义协议可供企业集成。 友户通做用友云的用户系统也一年多了,经常听实施、售前等说要私有化部署友户通,原因无非是企业的考虑到用户安全性和单一用户账号的需求。但由于用户管理的复杂性,友户通部署与维护并不容易,因此经常纠结在用户...

    妤锋シ 评论0 收藏0
  • 新手也能实现,基于SpirngBoot2.0+ 的 SpringBoot+Mybatis 多数据源配

    摘要:下面基于,带着大家看一下中如何配置多数据源。注意版本不一致导致的一些小问题。配置配置两个数据源数据库和数据库注意事项在配置数据源的过程中主要是写成和。五启动类此注解表示启动类这样基于的多数据源配置就已经完成了,两个数据库都可以被访问了。 在上一篇文章《优雅整合 SpringBoot+Mybatis ,可能是你见过最详细的一篇》中,带着大家整合了 SpringBoot 和 Mybatis...

    shiina 评论0 收藏0
  • Hibernate配置及自定义注册映射文件

    摘要:一配置属性详解可以在各式各样不同环境下工作而设计的因此存在着大量的配置参数。以简便操作,多数配置参数都有默认的配置值也是我们日常使用的必须品。 Hibernate (开放源代码的对象关系映射框架) Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装, 它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernat...

    coordinate35 评论0 收藏0
  • 研发中:联邦SPIFFE信任域

    摘要:传递与双向联邦和具有与联邦相同的,称为跨领域信任。在中,彼此不完全信任的组织可能仍希望联邦其信任域。为此,他们联邦各自的信任域。这意味着检查百事可乐不是被可口可乐的签名。 作者:Daniel Feldman showImg(https://segmentfault.com/img/bVbld8P?w=1600&h=1066); 介绍 联邦信任域是SPIFFE和SPIRE最高需求和活跃开...

    flyer_dev 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<