在ORACLE 中能否用DB_LINK 连接MSSQL的数据库。 可以配置对mssql server的透明网关 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不同数据库平台的互连一般称之为数据库的异构服务,各厂商的具体实现技术不一样: 在SQL SERVER里面叫做LINKED SERVER,通过ODBC实现与其它数据库的互联。 而ORACLE实现异构服务的技术叫做透明网关(Transparent Gateway)。目前ORACLE利用透明网关可以实现和SQL SERVER、SYBASE、DB2等多种数据库的互联。 Oracle透明网关软件在Oracle 8i时是需要花钱另买的,大约1万$;到Oracle 9i时是作为数据库的一个组件免费发布的。安装时在组件种选择即可。(默认是不安装的。)第一步: 安装透明网关for sql server的软件后,可以在$ORACLE_HOME下看到tg4msql目录,编辑$ORACLE_HOME/tg4msql/admin/inittg4msql.sql文件有一行:HS_FDS_CONNECT_INFO="SERVER=192.168.0.1;DATABASE=pubs"其中:SERVER=192.168.0.1是SQL SERVER的服务名,后面的DATABASE不言而谕,是数据库名。第二步:修改 listener.ora在SID_LIST中加入以下内容:(SID_NAME = tg4msql) # SID自己命名 (ORACLE_HOME = c:) (PROGRAM = tg4msql) 第三步:在tnsnames.ora中填加sql2k = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521)) ) (CONNECT_DATA = (SID = tg4msql) )(HS=OK) ) 第四步:创建DB_LINK sql2k第五步:现在你就可以SELECT * FROM TABNAME@sql2k 或UPDATE TABNAME@sql2k SET ... WHERE ...注意:ORACLE SERVER的初始化参数global_names设为false 谢谢,wangybyangxr(王永斌),我先试试。 安装成功透明网关后,位置如下(以我的机器为例,Win2000server+Oracle9,安装在C:)C:\oracle\ora92\tg4msql\admin\inittg4msql.oratg4msql文件夹在安装成功后就有了,如果没有安装透明网关,则不会出现。在Windows下安装时,选择自定义安装,出现“可用产品组件”,选中其中的组件就行。如果方便的话,给我你的Email,我给你发一个安装时的画面 wangybyangxr(王永斌) 历害,我QQ:64437869 我的Mail. [email protected] 。thank very much. 旁观者谢谢有心人:wangybyangxr(王永斌)QQ:85566981MSN:[email protected] 我的email:[email protected]谢谢了wangybyangxr(王永斌)真强 实例如何导出 问一巨难sql? vb中如何接收dbms_output.pub_line()输出的值呢? left outer join 和 (+) 的问题? 简单问题 关于含有二进制流表操作的问题 为什么出现 ORA-00942: 表或视图不存在 为什么少了许多东西(我叫笨笨请多帮忙) 请问9i里面有没有象msSQL的事件探查器? 为什么一个索引反而比两个索引要快(两张不同的表关联) 建非唯一键索引是否会影响sqlplus导数效率? 求一个取最大日期的sql语句
在SQL SERVER里面叫做LINKED SERVER,通过ODBC实现与其它数据库的互联。
而ORACLE实现异构服务的技术叫做透明网关(Transparent Gateway)。目前ORACLE利用透明网关可以实现和SQL SERVER、SYBASE、DB2等多种数据库的互联。
Oracle透明网关软件在Oracle 8i时是需要花钱另买的,大约1万$;到Oracle 9i时是作为数据库的一个组件免费发布的。安装时在组件种选择即可。(默认是不安装的。)第一步:
安装透明网关for sql server的软件后,可以在$ORACLE_HOME下看到tg4msql目录,编辑$ORACLE_HOME/tg4msql/admin/inittg4msql.sql文件有一行:HS_FDS_CONNECT_INFO="SERVER=192.168.0.1;DATABASE=pubs"
其中:SERVER=192.168.0.1是SQL SERVER的服务名,后面的DATABASE不言而谕,是数据库名。
第二步:
修改 listener.ora
在SID_LIST中加入以下内容:
(SID_NAME = tg4msql) # SID自己命名
(ORACLE_HOME = c:)
(PROGRAM = tg4msql)
第三步:
在tnsnames.ora中填加
sql2k =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521)) )
(CONNECT_DATA = (SID = tg4msql) )
(HS=OK)
)
第四步:
创建DB_LINK sql2k
第五步:
现在你就可以SELECT * FROM TABNAME@sql2k 或
UPDATE TABNAME@sql2k SET ... WHERE ...注意:
ORACLE SERVER的初始化参数global_names设为false
C:\oracle\ora92\tg4msql\admin\inittg4msql.ora
tg4msql文件夹在安装成功后就有了,如果没有安装透明网关,则不会出现。在Windows下安装时,选择自定义安装,出现“可用产品组件”,选中其中的组件就行。如果方便的话,给我你的Email,我给你发一个安装时的画面
历害,我QQ:64437869
QQ:85566981
MSN:[email protected]
谢谢了wangybyangxr(王永斌)
真强