DB2 数据库跨库查询

《在源数据库A中访问目标库B的表table1的方法》

db2=>updatedbmcfgusingFederatedYES//开启数据库联合查询

db2=>db2stopforce

db2=>db2start//重启数据库方可生效

注:开启数据库联合查询配置属性只需操作一次。

db2=>conncettoAuseruserusingpwd

db2=>createwrapperdrda

//创建DRDA包装器(WRAPPER)

//包装器是联邦数据库服务器同数据源的交互实现,构成其功能的函数集合封装在对应库文件(包装器模块)中

db2=>createserverBtypedb2/AIXversion9wrapperdrdaauthorization"db2admin"password"db2admin"options(dbname'B')

//创建服务器(SERVER)

//包装器模块被注册后,需要创建服务器对应实际的数据源。

db2=>createusermappingfor"db2admin"SERVER"B"OPTIONS(REMOTE_AUTHID'db2admin',REMOTE_PASSWORD'db2admin')

//创建用户映射

//指定联邦数据库用户认证到数据源用户认证的映射。

db2=>createnicknameB_TABLE1forB.db2admin.table1

//为目标数据库中的目标表创建昵称

//表别名用于关联位于数据源的对象。表别名的定义需要将标识该数据源的服务器,数据源对象的元数据信息放入全局编目中。

这样就建好了跨库访问环境,可在A中使用"select*fromB_TABLE1"来访问B里头的表table1,还可使用联合查询。

此文摘自:http://blog.csdn.net/pp156/article/details/5388173

相关推荐