原创

配置 Oracle 透明网关访问 SQL Server

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://wxy0327.blog.csdn.net/article/details/53927025

试验环境:

OS:XP
Oracle 10.1
SQLSERVER2000
HOSTNAME:home-30b98e1e20
都使用 tcp/ip 默认端口
 


1. 安装 TRANSPARENT GATEWAY 选件
使用 Oracle Universal Instraller 在已安装的 ORACLE_HOME 上选择定制安装,选择 Oracle Transparent Gateways for Microsoft SQL Server,
安装完成了以后有这样一个目录 $oracle_home\tg4msql

2. 在 $oracle_hometg4msqladmin 目录下建立文件 initsql2000.ora其中内容为:
HS_FDS_CONNECT_INFO=home-30b98e1e20.test # home-30b98e1e20 为SQL服务器名
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER


3. 配置 LISTENER.ORA

(SID_DESC =
(GLOBAL_DBNAME = tg4sql) # 可自己命名
(PROGRAM = tg4msql)
(SID_NAME = sql2000) # 与上一步文件名 initsql2000.ora 中的 sql2000 相同
(ORACLE_HOME = E:\oracle\product\10.1.0\Db_1)
)


4. 使用 Windows 中的“服务” 重启 Oracle LISTENER 和 DATABASE 服务


5. 配置 tnsnames.ora

sql2000 =
    (DESCRIPTION =
        (ADDRESS_LIST =
            (ADDRESS = (PROTOCOL = TCP)(HOST = home-30b98e1e20)(PORT = 1521))
        )
        (CONNECT_DATA =
            (SID = sql2000)
        )
        (HS = OK)
    ) 

6. 建立 DATABASE LINK

CREATE DATABASE LINK DB_SQL CONNECT TO SA IDENTIFIED BY PASSWORD USING 'sql2000';

7. 测试

select * from t1@sql2000;

注意:

1. HS_FDS_CONNECT_INFO=home-30b98e1e20.test 中的服务名写成 localhost 或 local 在测试时会有挂起问题;
2. 使用 DBLINK 时,关于 spfile 中 GLOBAL_NAME 的设置:
如果为 ture , 请使用DBLINK的全称,可在 all_db_links 中查到;
如果为 FALSE, 不必使用全称,当出现 “ORA-02019:为找到远程数据库的连接说明”时,请使用全称,如:

select * from t1@sql2000.ORACLE.COM

文章最后发布于: 2016-12-29 13:51:57
展开阅读全文
0 个人打赏
私信求帮助

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览