通过Oracle的GateWay,访问SQLServer的数据【方法二】

1.  Oracle GateWays

oracle 透明网关是oracle连接异构数据库提供的一种技术。通过Gateways,可以在Oracle里透明的访问其他不同的数据库,如SQL Server, DB2, Sybase等等,就像远程Oracle数据库一样。

在官网上下载Oracle GateWays软件或者找我要,Oracle GateWays中文名字叫透明网关。

1.1.  下载

官方网址是http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

 

打开后点击See All

 

1.2.  安装

解压后双击setup。这里只介绍透明网关和oracle11g安装在同一台电脑上的方法。

 

       点击下一步。

 

       点击下箭头,选择oracle的安装目录,不要去手写,然后点击下一步

 

      

    这里选择SQL SERVER

 

 

 

 

    这里分别是主机名(IP地址)、实例名(sqlserver可不填)、数据库名。这三个可填可不填,后面可以在文件里面做修改。

 

   

1.3.  配置

打开安装路径找到initdg4msql.ora这个文件,该文件命名规则是:init+ID.ora。一般默认的就可以,打开文件将里面的IP地址和数据库名进行修改,如果安装的时候没有填写错误,这一步可以省略。

 

 

左面是IP地址,即sqlserver的IP地址,如果端口号不是1433,则必须加,右面是数据库名

 

 

       修改下面的路径中的两个文件。

 

 

    (SID_DESC =

      (SID_NAME = dg4msql)

      (ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)

      (PROGRAM = dg4msql)

     )

 

       DG4MSQL =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521 ))

    (CONNECT_DATA = (SID = dg4msql))

    (HS = OK)

  )

重启监听,操作:计算机->管理(右键)->服务和应用程序->服务->找到Oracle服务(监听服务)进行重启操作。

1.4.  测试

在plsql中创建dblink

Create public database link dblink名字 connect to sqlserver的用户名大多填写sa identified by sqlserver的密码sa的密码 using ‘dg4msql';

 

实例:

 

       Dblink名字可以随便起,sqlserver用户名和密码注意要用双引号。

测试连接:Select * from 表名@DBLink名称。

1.5.  特殊说明

  • oracle修改global_name和service_name

如果安装的oracle的sid带有后缀域名,则在添加Dblink链接时,因为中间包含小数点,则会提示出错,例如:orcl.168.196.214

下面是如何在安装好oracle后,有后缀的取消方法:

在dos命令下执行如下的命令:

(1)show parameter db_name;  --显示

 

(2) show parameter db_domain;

(3) show parameter service_name;

(4) select * from global_name;