当前位置:  -> 首页 -> Oracle10g通过透明网关访问SQLServer2005

上一篇 | 下一篇
Oracle10g通过透明网关访问SQLServer2005
作者:洛羽叶  点击率:3674  发布时间:2009-02-21

很多时候为了做数据导入或者数据迁移,我们需要在Oracle里访问SQLServer的数据,通过程序自然能够进行两者之间的数据交换,但效率较低,Oracle透明网关提供直接访问SQLServer数据库的功能,但切记存在以下限制(技术上可以找到解决办法,但麻烦比好处多):

       存在二进制的字段的表最好不要通过透明网关访问。
       SQLServer中的表名称、字段名成最好修改为大写。
      
以下是透明网关的配置步骤:
1. 安装Oracle10g数据库软件并创建数据库test
       http://www.oracle.com可以下载到所有安装文件,我用的是
       Oracle企业版10.2.0。
 
2. 安装透明网关软件
 
3. 配置透明网关
       c:\oracle\product.2.0\db_1\tg4msql\admin\initmssql.ora
       HS_FDS_CONNECT_INFO="SERVER=SQLHOSTNAME;DATABASE=SQLDB"
       HS_FDS_TRACE_LEVEL=OFF
       HS_FDS_RECOVERY_ACCOUNT=RECOVER
       HS_FDS_RECOVERY_PWD=RECOVER
 
4. 配置监听服务
              c:\oracle\product.2.0\db_1\NETWORK\ADMIN\listener.ora
LISTENER =
 (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST =ORAHOSTNAME)(PORT = 1521))
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
 )
 
SID_LIST_LISTENER =
 (SID_LIST =
     (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = C:\oracle\product.2.0\db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =     
      (SID_NAME=mssql)
      (ORACLE_HOME = C:\oracle\product.2.0\db_1)     
      (PROGRAM=tg4msql)
    )
 )
 
5. 配置连接方式(切记不要漏掉)
              c:\oracle\product.2.0\db_1\NETWORK\ADMIN\sqlnet.ora
              SQLNET.AUTHENTICATION_SERVICES = (NONE)
 
6. 创建数据库链接sqldb指向SQLServer数据库
             
7. 访问数据
       sqlplus test/123456@test
       select * from table1@sqldb;
       查到了吧!
 
注意事项:
       访问SQLServer时SQL语句中的字段名经常要加引号。
              select “f1” from t1
       访问SQLServer的Text字段要在Oracle中创建全局临时表导入后才能访问。 
标签: ORACLE SQLSERVER 透明网关
引用地址:本站原创
   站点首页      技术人生      旅途足迹      我要留言      友情链接      关于站长   
[本站统计]
在线人数:0
今日访问:30
总访问量:1471138
Copyright 2006-2022 EasyWeb 1.6 订阅 All Rights Reserved
粤ICP备08028977号-1
www.luoriver.com
Created by WWH in 2006