ITPub博客

首页 > 数据库 > Oracle > oracle 透明网关,oracle到sql server的dblink

oracle 透明网关,oracle到sql server的dblink

原创 Oracle 作者:wanglinghua0907 时间:2024-01-22 10:29:05 0 删除 编辑

19c的库用11204的透明网关也可以的

案例:

19.10的oracle——sql server 2008r2(windows server 2008)


Oracle 11g透明网关连接Sqlserver

oracle 透明网关是oracle连接异构数据库提供的一种技术。通过Gateway,可以在Oracle里透明的访问其他

不同的数据库,如SQL Server, DB2, Sybase等等,就像远程Oracle数据库一样。配置后的sql查询的处理流程

,如下:

IMG_256

 

一、环境

平台 数据库 IP地址

Redhat 6.6 Oracle 11.2.0.4 155.155.154.154

Win2008 MSSQL 2008 172.16.20.217

 

二、 oracle透明网关配置

1. 下载p13390677_112040_MSWIN-x86-64_5of7.zip,在win2008上安装gateways

Un ver 、 垡 1 10% “ 1 ] 可 用 产 品 组 件 司 用 产 品 组 一 11g ORACLE 0 A T A B A S E OracleDatabaseGateways 以 下 是 可 作 为 Oracle Database Gateways 的 一 部 分 进 行 奘 的 组 件 。 您 希 望 奘 些 组 ? Oracle D 为 00 e Gatevvmts 1120 上 0 囗 Orac 处 0 星 ab e(Neway 《 orh 《 0 俯 奴 11 . 201 囗 Ora : 的 Gateway Sybase 1 1 2 月 . 1 0 Or 的 Gatevvay SQL Server 11 2 ℃ 0 囗 OOra&D-*abaseGdewaYtorTeraddall_21JlO []0r&2陀DM引 〕 aseGMewaYtorÅPPCll.2.O_lO 囗 Or & : D ab eG 嗍 e “ ay 化 rY b* 吧 re ; 11 ℃ 身 囗 Ora 亡 0 ab e tor 〔 0 112 思 上 0 未 蜜 装 未 安 装 卡 安 全 部 鏗 开 旧 「 显 示 所 有 组 包 括 所 烹 泪 关 组 件 。 帮 助 ) 已 安 装 品 (E) 全 部 隐 (C) 全 部 不 选 (Q) 上 一 “ I 圭 选 下 一 步 取 消

n.tub. for SQL server ORACLE I Ig DATABASE Oracle Database Gateway for Microsoft SQL Server Micro son SQL Server SQL server lg2. 16B. 56. 201 SQL Server SQL ZUODAO zgps


注:GATEWAY_HOME=C:\product\11.2.0\tg_1

 

2. 配置透明网关

①配置Gateway的初始参数文件

在C:\product\11.2.0\tg_1\dg4msql\admin目录下,默认有一个initdg4msql.ora,此文件命名格式为:init<SID>.ora,

可以使用initdg4msql.ora默认参数文件,也可以自己创建。

这里我们创建一个initzgps.ora参数文件,内容如下:

语句:[hostname:port]/serverinstance/databasename

成功案例:

HS_FDS_CONNECT_INFO=[10.211.55.7]//MSSQLSERVER/ABC
# This is a customized agent init file that contains the HS parameters
# that are needed for the Database Gateway for Microsoft SQL Server
 
#
# HS init parameters
#
HS_FDS_CONNECT_INFO=172.16.20.217:1433//HINAMIIS_Domain   如果报错就写:[172.16.20.217]/实例名/HINAMIIS_Domain   
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER

②配置Gateway的网络监听文件C:\product\11.2.0\tg_1\NETWORK\ADMIN\listener.ora

添加如下内容:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = HINAMIIS_Domain) #此处为配置文件SID,要与前面创建的init HINAMIIS_Domain.ora中的名字对应
      (ORACLE_HOME = C:\product\11.2.0\tg_1)
      (PROGRAM = dg4msql)  #此处为配置文件目录名称,都为dg4msql,不需变更
    )
  )

③重启透明网关监听器

点击C:\product\11.2.0\tg_1\BIN\LSNRCTL.EXE


3. Oracle服务器配置tnsname

conn_mssql =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.20.217)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = dg4msql)
    )
    (HS = OK)
  )

4. 建立DB link

create public database link pacs connect to sa identified by "######" using 'conn_mssql';


5. 测试(注意,oracle到sql server,where的列名要"")

select * from BodyPort@pacs;

SELECT * FROM CIS_OPERATION_INFO@CISDB_LINK where "operation_id"=1;

容易碰到的问题

1.监听起不来

同时装了client

监听默认去连client那边了

设置windows里的TNS_ADMIN=C:\product\11.2.0\tg_1\network\admin


2.监听起来,但是dblink还是不行

ORA-28545

ORA-02063

Oracle%.atabasell Enteræ•lse With the OLAV. Data select frm selea_ frm test—txzbliü ning and 1_1.2.0.4.0 — 64b't prodLÆtdon Appliution Testing options ORA-2BS4S: r by NetS to UrAb1e to test of sage ORA-02063: preceding 2 edt


同时装了client

其他不变,黄底红字部分写成完整路径!!!


SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = HINAMIIS_Domain) #此处为配置文件SID,要与前面创建的init HINAMIIS_Domain.ora中的名字对应
      (ORACLE_HOME = C:\product\11.2.0\tg_1)
      (PROGRAM = dg4msql)  #此处为配置文件目录名称,都为dg4msql,不需变更
    )
  )



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69980685/viewspace-3004627/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle ACE、sql server、oceanbase数据库专家,拥有7年以上的大型数据库运维经验,主方向oracle,擅长故障排除、诊断,大体量(TB)迁移,异常故障修复等。拥有丰富主导大型项目经验。服务行业包括:运营商、银行、金融业、政府单位、医疗、制造业、高校等等。

注册时间:2020-07-31

  • 博文量
    116
  • 访问量
    88789