当前位置:  数据库>oracle

通过Oracle透明网关连接Sybase

    来源: 互联网  发布时间:2017-06-23

    本文导语: Oracle公司提出的透明网关技术可用于实现与其他多种类型的数据库的互联,实现不同类型数据之间建立连接,方便于使用者进行查询。近日,在公司的某项目的实施过程中,开发人员需要访问Sybase数据库中的某些表,就想到创建...

Oracle公司提出的透明网关技术可用于实现与其他多种类型的数据库的互联,实现不同类型数据之间建立连接,方便于使用者进行查询。近日,在公司的某项目的实施过程中,开发人员需要访问Sybase数据库中的某些表,就想到创建一个中间库,使用Oracle透明网关,创建dblink去读取数据。由于在安装过程中出现过不少的错误,特此记录一下配置过程。

Oracle 11g透明网关连接sybase数据库 

一、安装透明网关

先从Oracle的官方网站下载所需版本的透明网关软件。我这里选用的是win32_11gR2_gateways。安装过程可以参看网络搜索上的教程,这里只提两点需要注意的地方:
(1)、透明网关的安装路径不要选择默认,应置于ORACLE_HOME目录下(透明网关和数据库在同一台服务器上)。
(2)、安装之前应准备好异构数据库(Sybase)的IP地址、端口、数据库名。

二、配置透明网关

安装好透明网关软件后,会在$ORACLE_HOME/dg4sybs/admin目录下生成对应的配置文件initdg4sybs.ora。由于我使用的是Windows服务器,配置文件为C:apporacleproduct11.2.0dbhome_1dg4sybsadmindg4sybs.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:apporacleproduct11.2.0dbhome_1dg4sybsadmin目录下的另外两个文件: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:apporacleproduct11.2.0dbhome_1networkadminsqlnet.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

至此,所有操作完成,配置成功!


    
 
 

您可能感兴趣的文章:

  • 请较:用window2000做网关,现在LINUX怎么设置才能才能通过它上网呢?
  • 网关可以通过ICMP报文来控制客户机向外界的udp请求吗?
  • 请问SuSe10下如何通过命令配置网卡IP/网关/DNS?
  • 在Linux下,如何通过命令行方式设置主机的网关的IP地址。
  • redhat 7.2下我从局域网内部通过网关访问外部网站,如何设置DNS(图形界面方法也可以)
  • iptables做透明网关,所有局域网winxp客户端都通过linux上网,如何限速?
  • 紧急求救!能通过jdbc怎样连接sqlsever 然后通过 for xml 关键字得到xml流吗?
  • 大家有多少web application是直接连接数据库的?又有多少是通过weblogic或websphere之类连接的?
  • 通过JDBC连接数据库,执行抄作后,关闭了连接,数据服务器端的进程还在,怎麽处理?
  • 那位哥们能举个通过jndi连接连接池的例子??多谢!!!
  • 请问通过纯jdbc能否联 sqlserver7.0,注意不是通过jdbc-odbc桥,如果能的话,driver在哪里下载?连接的语句怎么写?
  • 怎么直接通过JDBC连接oracle?
  • kjava能不能通过socket连接服务器
  • mysql主从连接失败,怎样通过binlog日志恢复呢?
  • 通过JdbcOdbcDriver连接Access出现“未发现数据源名称并且未指定默认驱动程序”
  • 紧急求救 我用freebsd通过smbfs连接win2000的一些问题 (分不够可加)
  • 紧急求救 我用freebsd通过smbfs连接win2000的一些问题
  • 怎么通过主机名连接server机
  • linux下几个设备通过串口串行连接,如何协调各串口发送数据
  • 请教高手,通过ssh连接suse linux的三种方式是否可以修改?
  • 不想通过jdbc-odbc桥,连接数据库,该怎么做?
  • 通过JDBC能够连接access吗,不使用ODBC
  • 怎样在linux下建立一个PPP服务器,并在另一台机子上通过pppd来建立连接呀?
  • linux重启后无法通过ssh连接
  • linux下通过工具putty连接服务器,用批处理启动jboss后,如何使得关闭窗口而服务不停?
  • 怎样通过Ip地址连接Sql server 数据库?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 哪位大哥奉献一段调试通过的oracle中存取图片的例子oracle8.1.7,resin-2.1.6
  • windows通过TCP/IP怎么连接到solaris上的oracle?
  • 急。。。在servlet如何连接到oracle(不通过odbc)
  • linux下通过对文件读取方式查询oracle的版本信息
  • linux能够通过执行脚本添加oracle数据库的用户吗
  • 如何在UNIX上通过ODBC操纵Oracle等DBMS???
  • Window客户端通过ADO是否能够连接和操作Unix平台下的Oracle数据库?
  • 通过docker commit命令保存对docker容器的修改 iis7站长之家
  • 通过win2000在linux上安装oracle,需要一个什么工具?在哪有下?
  • windows下通过ie访问不到linux环境下的oracle em
  • Linux/UNIX下,C++程序通过那些步骤访问Oracle或者Sybase SQL数据库?
  • 通过Oracle发送Email的实现方法
  • unix通过crontab 定时启动oracle应用程序??????????
  • 通过进程id号知道一个Oracle会话所占用的内存
  • oracle通过行范围查询取4至10行
  • apache通过php的oci函数读取Oracle(字符集ZHS16GBK)时,显示乱码,如何解决?
  • 通过一晚上.在2000上装了REDHAT9.再装ORACLE9I
  • 我准备装linux 7.3,大家能给点意见吗,我1GB的内存,那么交换区设多大? oracle9i能在7.3上通过吗?
  • 通过libsqlora8-2.2.10--c语言程序连接oracle数据库,需要连接,查询,修改等,急!!!
  • 详解通过Backup Exec来实施Oracle灾难恢复
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • applet可以不通过数字签名,通过设置IE直接在本地访问本地文件吗
  • php通过socket_bind()设置IP地址代码示例
  • 我使用.net编译通过,但是使用g++编译不能通过。总是提示我undefined reference to ~myclass()
  • 通过javascript库JQuery实现页面跳转功能代码
  • 我想我的网站屏蔽掉通过某些网站过来的访问,我想通过htaccess 文件来做,请大家帮帮我。
  • c#通过委托delegate与Dictionary实现action选择器代码举例
  • 如何通过INTERNET访问通过共项一条线路上网的局域网中的机器???
  • linux下通过crond实现自动执行程序
  • 为什么g++编译通过了,而gcc却编译通过不了???
  • 通过docker commit命令保存对docker容器的修改


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3