当前所在位置:珠峰网资料 >> 计算机 >> Oracle认证 >> 正文
有关Oracle透明网关的若干使用方法介绍
发布时间:2010/11/3 14:46:49 来源:城市学习网 编辑:ziteng

  Oracle 数据库的透明网关( transparent gateway )是这样的一个接口:通过它,我们可以 sqlplus 操纵其他数据库,如 ms sqlserver 、 sybase 、 infomix 等,实现数据库的异构服务。我一直在找 8i 的透明网关,但是没有; 9i 就有了, 9 i 连接 sqlserver 的透明网关在 9i for nt/2000 的安装盘上。

  本文以 oracle 连接 sqlserver 为例,叙述一下配置的主要步骤。

  网络结构

  服务器一: sqlserver , ip 为 147.25.8.1 , port 为 1433 ;

  服务器二: oracle 9i server 和透明网关, ip 为 147.25.8.11 , port 为 1521 ;

  服务器三: oracle server , ip 为 147.25.8.111 , port 为 1521 ;

  客户机: sqlnet + sqlplus ,或其他客户端软件。

  安装 / 配置 oracle 9i server 和透明网关

  安装: 在服务器二上安装 9i server for nt/2000 ,必须选择透明网关( transparent gateway for ms sqlsvr )。

  在服务器二上安装 sqlsvr 的客户端程序。

  配置: 在服务器二上正常配置 listener , port 口为 1521 ;

  在服务器二上配置 listener.ora ,在 SID_LIST 中加入:

  ( SID_NAME = SID_NAME ) --------- 自己修改

  ( ORACLE_HOME = 《 ORACLE_HOME 》)

  ( PROGRAM = tg4msql ) ---------- 这是透明网关的目录

  在服务器二上配置透明网关的配置文件(《 ORACLE_HOME 》 \tg4msql\admin\initSID_NAME.ora ),明确:

  HS_FDS_CONNECT_INFO = “SERVER = 147.25.8.1;DATABASE = pubs”

  在服务器二上配置 sqlsvr 的客户连接:

  SERVER NAME = SERVER NAME -------- 自己修改

  SERVER = 147.25.8.1

  PORT = 1433

  PROTOCOL = TCP/IP SOCKET

  在服务器三上配置 tnsnames.ora ,加入一个 tns :

  MSSQL =

  (DESCRIPTION =

  (ADDRESS_LIST =

  (ADDRESS =

  (PROTOCOL = TCP)

  (HOST = 147.25.8.11)

  (PORT = 1521)))

  (CONNECT_DATA =

  (SID = SID_NAME)) --------SID 自己修改(与上文一致)

  (HS = OK)

  )

  测试

  服务器一: 启动 sqlserver ,确认用户 sa 及其密码(或另外建用户、建表)。

  服务器二: 启动 listener 。 oracle 数据库不需要启动。

  服务器三: sqlplus scott/tiger

  create database link mssql connect to sa identified by password using ‘mssql';

  select * from sales@mssql;

  如果无误,配置透明网关成功。

  其他

  使用透明网关只可以用标准的 DML ;

  服务器一二三还可以是一个服务器,也可以任意组合成两个服务器;但是服务器二所在的服务器必须是 windows nt/2000 server 平台;

  透明网关可以同时连接多个 sqlsvr ,方法是加入多个 SID_LIST 和相应的 initSID_NAME.ora 配置文件;

  可能会遇到中文字符显示成乱码的情况,这可能是由于 sqlsvr 的服务器和客户端的程序不是一个版本引起的。我正在测试。

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved