共计 2360 个字符,预计需要花费 6 分钟才能阅读完成。
Oracle 公司提出的透明网关技术可用于实现与其他多种类型的数据库的互联,实现不同类型数据之间建立连接,方便于使用者进行查询。近日,在公司的某项目的实施过程中,开发人员需要访问 Sybase 数据库中的某些表,就想到创建一个中间库,使用 Oracle 透明网关,创建 dblink 去读取数据。由于在安装过程中出现过不少的错误,特此记录一下配置过程。
Oracle 11g 透明网关连接 sybase 数据库 http://www.linuxidc.com/Linux/2015-01/112552.htm
一、安装透明网关
先从 Oracle 的官方网站下载所需版本的透明网关软件。我这里选用的是 win32_11gR2_gateways。安装过程可以参看网络搜索上的教程,这里只提两点需要注意的地方:
(1)、透明网关的安装路径不要选择默认,应置于 ORACLE_HOME 目录下(透明网关和数据库在同一台服务器上)。
(2)、安装之前应准备好异构数据库 (Sybase) 的 IP 地址、端口、数据库名。
二、配置透明网关
安装好透明网关软件后,会在 $ORACLE_HOME/dg4sybs/admin 目录下生成对应的配置文件 initdg4sybs.ora。由于我使用的是 Windows 服务器,配置文件为 C:\app\oracle\product\11.2.0\dbhome_1\dg4sybs\admin\dg4sybs.ora,文件内容如下:
1 2 3 4 5 6 7 8 9 10 | # This is a customized agent init file that contains the HS parameters # that are needed for the Database Gateway for Sybase # # HS init parameters # HS_FDS_CONNECT_INFO=[198.168.1.11]:7000/HNXS HS_FDS_TRACE_LEVEL=OFF HS_FDS_RECOVERY_ACCOUNT=RECOVER HS_FDS_RECOVERY_PWD=RECOVER |
该配置文件是在安装透明网关的过程中系统自动生成的,原则上不用修改,可以基于此进行后续的配置(你也可以 initdg4sybs.ora 为模板,创建自己的透明网关配置文件 initsid.ora)。另外请注意 C:\app\oracle\product\11.2.0\dbhome_1\dg4sybs\admin 目录下的另外两个文件:listener.ora.sample 和 tnsnames.ora.sample,需理解其中的内容。
三、添加监听和 TNS 配置
这时 listener.ora.sample 和 tnsnames.ora.sample 这两个示例文件就可以帮助我们方便的完成配置文件的修改,将 listener.ora.sample 文件中的 ”(SID_DESC = …” 部分的内容放到 listener.ora 文件的 SID_LIST 下,保存。将 tnsnames.ora.sample 文件中的“dg4sybs = …”部分的内容拷贝到 tnsnames.ora 文件中,保存。配置完成之后,重启监听。
四、创建访问 Sybase 的 DBLINK
1 | create publice database link dblink_name connect to "username" identified by "password" using 'dg4sybs' ; |
执行该命令有两点需要注意:
(1)、用户名为访问 sybase 数据库的用户名和密码。
(2)、如果使用透明网关默认的配置文件的话这里就用 dg4sybs,否则,使用你自己定义的 SID。
五、测试访问
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | C:\>tnsping dg4sybs TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 13- 7 月 - 2016 12:40:40 Copyright (c) 1997, 2010, Oracle. All rights reserved. 已使用的参数文件: C:\app\oracle\product\11.2.0\dbhome_1\network\admin\sqlnet.ora 已使用 TNSNAMES 适配器来解析别名 尝试连接 (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=10.10.4.4)(PORT=1521)) (CONN ECT_DATA=(SID=dg4sybs)) (HS=OK)) OK (10 毫秒) C:\>sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on 星期三 7 月 13 12:41:15 2016 Copyright (c) 1982, 2010, Oracle. All rights reserved. 连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select * from dual@hnxs_link; DUMMY ------ X |
至此,所有操作完成,配置成功!
更多 Oracle 相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-07/133233.htm