xiu12 发表于 2016-11-13 08:34:39

DB2 数据库跨库查询

《在源数据库A中访问目标库B的表table1的方法》
db2 =>update dbm cfg using Federated YES    //开启数据库联合查询
db2 =>db2stop force
db2 =>db2start                              //重启数据库方可生效
注:开启数据库联合查询配置属性只需操作一次。
db2 =>conncet to A user user using pwd
db2 =>create wrapper drda                  
      //创建DRDA包装器(WRAPPER)
      //包装器是联邦数据库服务器同数据源的交互实现,构成其功能的函数集合封装在对应库文件(包装器模块)中
db2 =>create server B type db2/AIX version 9 wrapper drda authorization "db2admin" password "db2admin" options(dbname 'B')
      //创建服务器(SERVER)
      //包装器模块被注册后,需要创建服务器对应实际的数据源。
db2 =>create user mapping for "db2admin" SERVER "B" OPTIONS   (REMOTE_AUTHID 'db2admin' , REMOTE_PASSWORD 'db2admin')
      //创建用户映射
      //指定联邦数据库用户认证到数据源用户认证的映射。
db2 =>create nickname B_TABLE1 for B.db2admin.table1
      //为目标数据库中的目标表创建昵称
      //表别名用于关联位于数据源的对象。表别名的定义需要将标识该数据源的服务器,数据源对象的元数据信息放入全局编目中。
这样就建好了跨库访问环境,可在A中使用"select * fromB_TABLE1 "来访问B里头的表table1,还可使用联合查询。


此文摘自:http://blog.csdn.net/pp156/article/details/5388173
页: [1]
查看完整版本: DB2 数据库跨库查询