DB2II访问Oracle数据库的配置说明
一、安装配置Oracle客户端,用sqlplus测试能成功访问Oracle数据:
二、停止db2实例,下面以db2test实例为例:
db2stop
三、以root用户身份登录,建立包装器库与数据源客户机软件之间的链接:
su – root
###设置Oracle环境变量
export ORACLE_HOME=/oracle/app/oracle/product/9.2.0.1
### For 64位实例
/opt/IBM/db2/V8.1/bin64/djxlinkOracle
### For 32位实例
/opt/IBM/db2/V8.1/bin/djxlinkOracle
### 更新实例,保留以前的位数
/opt/IBM/db2/V8.1/instance/db2iupdt -k db2inst1
exit
### 在分区数据库环境中,若有多台物理主机上,请分别在每台机器上运行上面的djxlinkOracle及实例更新操作。
四、配置实例主目录下的sqllib/cfg/db2dj.ini,增加如下Oracle环境变量内容:
ORACLE_HOME=/oracle/app/oracle/product/9.2.0.1
ORACLE_BASE=/oracle/app/oracle
ORA_NLS33=/oracle/app/oracle/product/9.2.0.1/ocommon/nls/admin/data
TNS_ADMIN=/oracle/app/oracle/product/9.2.0.1/network/admin
NLS_LANG=american_america.zhs16cgb231280
五、修改 DBM参数FEDERATED为YES:
db2 "update dbm cfg using FEDERATED YES"
六、重启实例,并建立测试数据库:
db2start
db2 "create db testdb using codeset ISO88591 territory us"
db2 "connect to testdb"
七、注册Oracle包装器:
db2 "create wrapper net8"
八、为Oracle数据源注册服务器定义:
db2 "create server odb type oracle version 8.1.7 wrapper net8 options (node 'odb') "
九、为Oracle数据源创建用户映射:
db2 "create user mapping for db2inst1 Server odb options (remote_authid 'user', remote_password 'pwd')"
十、创建用户昵称,测试连接:
db2 "create nickname u_info for odb.sys.all_users"
db2 "select count(*) from u_info"
db2 "set passthru odb"
db2 "select count(*) from sys.all_tables"
db2 "set passthru reset"
mymm 回复于:2005-05-18 00:46:21
GOOD!
不知梦兄前两天提的那个LOCAT DB2和REMOTE DB2之间的复制项目实施的怎么样了,正在考虑这个问题,如果有结果,不妨拿出共享!
daliwa 回复于:2005-05-18 16:18:35
应该也是一样的,建立联邦数据库
orablue 回复于:2005-05-21 10:15:11
前段时间搞复制搞的头都大了.
daliwa 回复于:2005-05-22 11:05:19
不过,我也有点担忧
我现在用DB2访问oracle的数据库,由于oracle数据库比较重要,我只能对其中的一些表进行读操作的权限.
请问,这种情况下,我还能不能能过建立联邦数据库在DB2中读oracle中的表?
还有,在建立的过程中,会不会对oracle数据库造成影响(这是我最关心的!)
大梦 回复于:2005-05-22 21:37:00
我暂时还没有把Oracle搞出过问题,DB2II到是把DB2 UDB搞down了好几回!
daliwa 回复于:2005-05-23 15:54:58
呵呵,那偶就放心了
现在偶也先尝试一下,DB2和DB2的互连,不知大梦兄有没做过?
dearnnyang 回复于:2005-07-20 11:51:38
我想问个问题,有谁试过在JAVA程序里启动asnapply吗?
markmahw 回复于:2005-07-21 01:18:48
DDDDDDDDDDDDdd
warmsping 回复于:2005-11-11 14:46:39
楼主有DB2II的软件可供安装吗?
大梦 回复于:2005-11-11 22:34:26
我不是雷锋!
macrodba 回复于:2005-12-15 17:41:21
good
我笨故我在new 回复于:2005-12-16 09:28:23
好
lizhuo 回复于:2007-01-29 11:47:33
通过联邦数据库访问别的数据库的数据,可以建立高速缓存表,mqt在本地存放远程数据库中表的数据,这个俺测试过,速度还可以。当然了,两边要启动复制进程。
大梦 回复于:2007-01-29 21:14:32
MQT运行在联邦之上需要启动复制进程?
呵呵,我看了好象不知道的!MQT可以直接建立在nickname之上!
lizhuo 回复于:2007-01-30 11:35:14
做了测试才有发言权,做了吗你?不要以为斑竹就什么都知道。
大梦 回复于:2007-01-30 11:39:49
楼上的说话不要太冲了!
对事不对人!
当然做过了!
我是先建几个nickname,再直接建MQT,再刷新数据!
没明白你的复制进程是什么意思?
[ 本帖最后由 大梦 于 2007-1-30 11:41 编辑 ]
lizhuo 回复于:2007-01-30 11:48:57
在创建高速缓存表的时候,会创建mqt,当启用高速缓存表时,会自动在源和目标启动捕获和apply进程。否则在联邦数据库上怎能刷新源端的数据呢?
大梦 回复于:2007-01-30 19:36:20
明白!明白!
我是做的手工刷新的MQT表,没做高速缓存表这一步,只是简单的建了一个MQT表,所以就没有你上面的说的capture与apply了!
我笨故我在new 回复于:2007-01-31 11:13:28
引用:原帖由 lizhuo 于 2007-1-30 11:48 发表
在创建高速缓存表的时候,会创建mqt,当启用高速缓存表时,会自动在源和目标启动捕获和apply进程。否则在联邦数据库上怎能刷新源端的数据呢?
确实是这样 高速缓存表就是联邦加复制实现的
大梦 回复于:2007-01-31 19:10:38
实在是不能忍受!
是不是又在家那头偷偷种了几个Trigger?
[ 本帖最后由 大梦 于 2007-1-31 23:52 编辑 ]
|