Oracle Gateway安装 连接SQL Server

本文详细介绍了如何使用Oracle Database Gateway for Microsoft SQL Server组件进行安装配置,包括设置安装路径、指定SQL Server服务器信息,以及关键步骤如配置监听文件和TNS文件,以实现与SQL Server的连接。最后,提供了创建DBLINK的示例。
部署运行你感兴趣的模型镜像
[oracle@bidbadm01 gateways]$ 
[oracle@bidbadm01 gateways]$ ./runInstaller 
Starting Oracle Universal Installer...

Checking Temp space: must be greater than 415 MB.   Actual 16709 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 24575 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2020-05-07_03-39-25PM. Please wait ...

选择安装路径,这里我们选择db的原安装路径
在这里插入图片描述
这里选择安装组件,我们需要对接的是SQL Server,所以我们这里选择Oracle Database Gateway for Microsoft SQL Server组件
在这里插入图片描述
重点
这里需要注意
Host Name为SQL Server服务器所在地址
Port Number为SQL Server服务端口
Server Name为SQL Server服务名,这个名称可以在Windows服务中查询到
Database Name为需要连接的具体的数据库名称
在这里插入图片描述
下一步
在这里插入图片描述
下一步
在这里插入图片描述
下一步
在这里插入图片描述
下一步,这里我们跳过,后面自己去改监听文件和TNS文件
在这里插入图片描述
下一步
在这里插入图片描述

重点来了
这里我们需要去配置监听文件和TNS文件,先找到透明网关的安装地址,找到 initdg4msql.ora 文件,直接改它
注意看 HS_FDS_CONNECT_INFO 那一行

[oracle@bidbadm01 admin]$ pwd
/u01/app/oracle/product/12.2.0.1/dbhome_1/dg4msql/admin
[oracle@bidbadm01 admin]$ ls
dg4msql_cvw.sql  dg4msql_tx.sql  initdg4msql.ora  listener.ora.sample  tnsnames.ora.sample
[oracle@bidbadm01 admin]$ 
[oracle@bidbadm01 admin]$ 
[oracle@bidbadm01 admin]$ cat initdg4msql.ora 
# 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=[192.168.xx.xx]:1433//crm_MSCRM
# alternate connect format is hostname/serverinstance/databasename
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER

修改TNS文件,在 tnsnames.ora文件后增加以下内容
这个HOST地址 写透明网关的安装地址,我的和数据库安装到一起的,所以写的是本机的地址

dg4msql =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = **********)(PORT = 1521))
    (CONNECT_DATA=(SID=dg4msql))
    (HS=OK)
  )

我这里是RAC环境,监听在Grid下,在 listener.ora 文件后增加如下内容,注意我们监听的方式是通过PROGRAM来监听的,SID_NAME就是我们之前透明网关配置文件 initdg4msql.ora initSID.ora 的SID

[grid@bidbadm01 admin]$ cat listener.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC = 
      (SID_NAME = dg4msql)
      (ORACLE_HOME = /u01/app/oracle/product/12.2.0.1/dbhome_1)
      (PROGRAM = dg4msql)
    )
  )

完事以后创建DBLINK就OK
create public database link crm_prod connect to BIUser identified by “*******” using ‘dg4msql’;

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

### 配置 Oracle Database Gateway 连接SQL Server #### 安装 Oracle Database Gateway 组件 为了实现 Oracle 数据库与 SQL Server 之间的通信,需先安装 **Oracle Database Gateway for Microsoft SQL Server** 组件。此组件并非默认随 Oracle Enterprise Edition 提供,因此需要单独下载并安装[^3]。 在安装过程中,选择目标路径可以是现有的 Oracle 软件目录,并确保选中对应于 SQL Server 的网关组件选项。具体操作如下: - 打开 Oracle 下载页面获取适合当前环境的版本。 - 启动安装程序,在组件选择界面勾选 `Oracle Database Gateway for Microsoft SQL Server`[^4]。 #### 修改监听器配置文件 listener.ora 完成安装后,编辑位于 `$ORACLE_HOME/network/admin/` 目录下的 `listener.ora` 文件,添加一个新的监听条目用于支持 DG4MSQL 协议: ```plaintext LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = your-oracle-hostname)(PORT = 1521)) ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = dg4msql) (ORACLE_HOME = /path/to/oracle/home) (PROGRAM = dg4msql) ) ) ``` 上述配置中的参数说明如下: - 替换 `your-oracle-hostname` 为运行 Oracle 网关的实际主机名或 IP 地址; - `/path/to/oracle/home` 应替换为实际的 Oracle 主目录位置; 最后重启监听器使更改生效: ```bash lsnrctl stop lsnrctl start ``` #### 编辑 tnsnames.ora 文件定义远程数据源 同样是在 `$ORACLE_HOME/network/admin/` 中找到 `tnsnames.ora` 文件,增加一段描述指向 SQL Server 实例的内容: ```plaintext DG4MSQL_DEMO = (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=<hostname of the Oracle Gateway Server>)(PORT=1511)) (CONNECT_DATA=(SID=dg4msql)) (HS=OK) ) ``` 这里的 `<hostname of the Oracle Gateway Server>` 是指代承载 Oracle Gateway 功能的服务节点名称或者IP地址[^2]。 #### 设置 HS 初始化参数文件 initdg4msql.ora 创建名为 `initdg4msql.ora` 的初始化参数文档放置于 `$ORACLE_HOME/hs/admin/` 下面,其基本结构可能像这样子: ```ini HS_FDS_CONNECT_INFO = <SQL_Server_Host>:<Port>/<Database_Name> HS_LANGUAGE = AMERICAN_AMERICA.WE8ISO8859P1 HS_NLS_DATE_FORMAT = DD-MON-YYYY HH24:MI:SS HS_NLS_NUMERIC_CHARACTERS = ., ``` 其中的关键字段解释有: - 将 `<SQL_Server_Host>` 更改为您的 SQL Server 计算机的名字, - 把 `<Port>` 设定成对应的端口号,默认情况下可能是 1433, - 并且指定确切的目标 `<Database_Name>` 值。 #### 测试连接性 当以上所有设置都完成后,可以通过标准工具比如 sqlplus 来验证新建立的数据链路是否正常工作: ```sql connect username/password@DG4MSQL_DEMO; select * from remote_table_name; ``` 如果一切顺利,则应该能够成功检索来自远端 SQL Server 表格的信息。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值