oracle透明网关链接sqlserver一般步骤以及注意事项
透明网关在网络上搜索一般的攻略都是下面这个文章
oracle通过dblink连接sqlserver数据库_戳一下有机会获得一份额外加个蛋的蛋炒饭-CSDN博客
经过多次的增加dblink链接,有一些经验心得,记录一下。
整体上透明网关的的网络路径为:
oracle客户端 ---》访问--》 oracle服务端 --》根据dblink配置上的数据源(本地tnsnames.ora或者直接配置的详细透明网关地址)--》连接到--》oracle透明网关服务的监听--》oracle透明网关根据监听中对应的SID_NAME--》找到dg4msql文件夹中的 init+对应的SID_NAME的ora的文件,得到sqlserver的地址--》连接sqlserver数据库。
其实简单来说,如果我们已经建立好了透明网关,新增一个sqlserver的dblink的步骤就是:
1、在透明网关服务目录 ORACLE_HOME\dg4msql\admin 下, 复制新建一个 init+对应的SID_NAME的ora,比如 inittestmsql.ora,修改里面的 HS_FDS_CONNECT_INFO=sqlserver的地址//sqlserver的库名
2、在透明网关服务目录 ORACLE_HOME\network\admin 下,修改listener.ora,在SID_LIST_LISTENER中新增SID_LIST的值,具体增加的为
(SID_NAME=testmsql)
(ORACLE_HOME=E:\app\Administrator\product\12.2.0\dbhome_1)
(PROGRAM=dg4msql)
这处的重点就是 SID_NAME要修改成自己定义的连接,而PROGRAM这里不要变
3、重启透明网关服务监听。
4、可以在客户端直接执行创建dblink的语句了
create PUBLIC database link test connect to "sa" identified by "111111"
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 透明网关IP地址)(PORT = 1521))
)
(CONNECT_DATA =
(SID = testmsql)
)
(HS=OK)
)';