Oracle Gateways 方式创建dblink 连接 SQLSERVER数据库
Posted jinanxiaolaohu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle Gateways 方式创建dblink 连接 SQLSERVER数据库相关的知识,希望对你有一定的参考价值。
1. 安装多次 发现在同一个机器上面总出问题,所以建议找一个没有安装oracle的机器上面进行安装gateways
2. 下载oracle gateways 并且解压缩, 下载地址详情见官网. 下载的安装文件: winx64_12201_gateways
安装.
3. 安装注意事项:
组件比较多 安装
设置数据库相关
执行安装完成.
4. 安装完成之后 修改主要的配置文件:
修改目录下下面的 initdg4msql.ora
文件内容自动生成
HS_FDS_CONNECT_INFO=[10.24.160.1]/MSSQLSERVER/CWBASEM871
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
一般要求在如下的目录下均有监听和tnsnames文件
C:app gAdministratorproduct12.2.0 ghome_1 etworkadmin
文件内容基本相同
本次举例
Listener.ora
# This is a sample listener.ora that contains the NET8 parameters that are
# needed to connect to an HS Agent
LISTENER =
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=Win2008r2sp1)(PORT=1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(SID_NAME=dg4msql)
(ORACLE_HOME=C:app gAdministratorproduct12.2.0 ghome_1)
(PROGRAM=dg4msql)
)
)
#ADR_BASE_LISTENER = C:app gAdministratorproduct12.2.0 ghome_1
#CONNECT_TIMEOUT_LISTENER = 0
tnsname.ora
# This is a sample tnsnames.ora that contains the NET8 parameters that are
# needed to connect to an HS Agent
dg4msql =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=Win2008r2sp1)(PORT=1521))
(CONNECT_DATA=(SID=dg4msql))
(HS=OK)
)
5. 修改完配置文件,重启lsnrctl 命令为:
cmd-> lsnrctl >stop >start 在cmd命令行中 tnsping dg4msql 验证提示. 已使用 TNSNAMES 适配器来解析别名 尝试连接 (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=Win2008r2sp1)(PORT=1521)) (C ONNECT_DATA=(SID=dg4msql)) (HS=OK)) OK (0 毫秒)
6. 在oracle服务器中创建配置
create database link zhaobsh connect to "lcm8719999" identified by "Test6530" using ‘(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.24.101.105)(PORT = 1521)) (CONNECT_DATA = (SID = dg4msql) ) (HS=OK) )‘
7. 查询验证
select * from [email protected]
发现的主要事项:
1. initdg4msql.ora 必须是目录:
C:app gAdministratorproduct12.2.0 ghome_1dg4msqladmin
下的, 而且 必须按照格式来. 这个链接方式可以 随便改 ,不需要重启lsnrctl 即可. 重新创建dblink 自动刷新 应该是走的一次磁盘io
2. dg 目录下的network 必须存在,并且有静态注册的 dg4msql 的sid 才可以,不然会报错, 放到刚才的那个目录下的文件没有用. 必须放在这个目录下
C:app gAdministratorproduct12.2.0 ghome_1 etworkadmin
3. 我发现11g和12c的 gateways 是可以互相联通的 不受版本限制. 但是某些表字段表特殊时会报错,如图示
以上是关于Oracle Gateways 方式创建dblink 连接 SQLSERVER数据库的主要内容,如果未能解决你的问题,请参考以下文章