此博文操作的基础是已经通过gateway创建了单独的一个dblink去访问sqlserver数据库。
具体操作可以打开如下链接查看:
https://blog.csdn.net/qq_37823979/article/details/106207903
在上面基础上配置创建多个sqlserver数据源的dblink。
接下来演示的是多配置两个数据源。
首先进入 ORACLE_HOME\dg4msql\admin 文件夹,
将dg4msql文件复制出来两份,命名为 initdg4msql2.ora 及 initdg4msql3.ora
然后进去修改ip地址及数据库名称端口号,
initdg4msql.ora: HS_FDS_CONNECT_INFO=IP地址:1433//MSSQLSERVER/dataportal
initdg4msql2.ora:HS_FDS_CONNECT_INFO=IP地址:1433//MSSQLSERVER/QZGX_QX_2018
initdg4msql3.ora:HS_FDS_CONNECT_INFO=IP地址:1433//MSSQLSERVER/QZGX_QX
然后去配置oracle的监听
进入到ORACLE_HOME\network\admin 目录下
修改listener.ora文件
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = E:\app\Administrator\product\12.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:E:\app\Administrator\product\12.2.0\dbhome_1\bin\oraclr12.dll")
)
(SID_DESC=
(SID_NAME=dg4msql)
(ORACLE_HOME=E:\app\Administrator\product\12.2.0\dbhome_1)
(PROGRAM=dg4msql)
)
(SID_DESC=
(SID_NAME=dg4msql2)
(ORACLE_HOME=E:\app\Administrator\product\12.2.0\dbhome_1)
(PROGRAM=dg4msql)
)
(SID_DESC=
(SID_NAME=dg4msql3)
(ORACLE_HOME=E:\app\Administrator\product\12.2.0\dbhome_1)
(PROGRAM=dg4msql)
)
)
在原有基础上新增两个监听实例。
之后打开tnsnames.ora文件,将下面的内容添加到tnsnames.ora文件中。
dg4msql2 =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(CONNECT_DATA=(SID=dg4msql2))
(HS=OK)
)
dg4msql3 =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(CONNECT_DATA=(SID=dg4msql3))
(HS=OK)
)
至此配置就完成了,然后重启监听,这里重启监听有几种方式,
最简单的就是 win+r-->cmd-->lsnrctl stop -->lsnrctl start -->lsnrctl status
执行结束后,里面会出现新配置的 dg4msql2 及dg4msql3 两个实例。
然后通过命令创建dblink
create PUBLIC database link TOQZGX_QX_2018 connect to "sa" identified by "111111" using 'dg4msql' ;
SELECT * FROM gs_etps_info@TOQZGX_QX_2018;
至此,多数据源dblink已创建完成。