核心导读:服装管理软件中数据库运用直接影响到系统性能。服装数据量大、变化快,报表格式复杂。一种简单的解决方法就是把业务数据库与分析数据库分开。志华软件成功应用了ORACLE与SQL2008配合使用的案例!其中数据交换核心就是透明网关的设置

我这里介绍的是Oracle11g的配置方法

环境:
yyora:Oracle11g ,实例名Fdb
yysql:Mssql 2000,数据库Tdb

第一步: 在yyora上安装11g的GateWay,安装时选择MSsql,官网上可以下载;

第二步:在Oracle的安装目录找到dg4msql/admin目录,里面有个模板文件initdg4msql.ora,此文件名的规则为init+SID.ora,其中SID是你将要连接的数据库的实例名。这里复制一个出来重名命为initTdb.ora,打开并修改其下一行内容:
HS_FDS_CONNECT_INFO = yysql//Tdb    
这个比较重要,格式为hostname/serverinstance/databasename

第三步:找到network/admin目录下的listener.ora和tnsnames.ora两个文件。
先配置listener.ora,打开后增加以下内容:
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = Tdb)      # 前面定义的SID
      (ORACLE_HOME = D:\app\Administrator\product\11.1.0\db_1)    #Oracle的安装目录
      (PROGRAM = dg4msql)   # 配置目录,不能变
    )
  )
再配置tnsnames.ora,打开后增加一个监听:
MSSQL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST=yyora)(PORT=1521))  
    )
    (CONNECT_DATA =
      (SID = Tdb)   # 前面定义的SID
    )
    (HS=OK)
  )

第四步:在服务中重启Listener

第五步:建立DatabaseLink
create public database link mssql connect to ora identified by "ora" using 'MSSQL';
格式:create public database link 连接名  connect to SQL用户名 identified by SQL用户密码 using 监听名;

第六步:使用
select * from tabname@mssql

如果在使用过程需要操作事务,那必须对透明网设置关分布式事务

注:建议网关与Oracle安装在同一目录