展开全部

当在Oracle 环境下通过透明网关建立一个对SQL Server 的连接时,要用到如下的语句,Create database link test connect to user identified by password using 'TG4MSQL';

在上面的语句里user 和 password是SQL Server 合法32313133353236313431303231363533e58685e5aeb931333339653662的用户登录名和密码,TG4MSQL则是Oracle Server端的TNS_NAMES 文件里已经配置好的服务名,服务器在处理上面的语句时会通过这个服务名 (TG4SMQL)访问透明网关所在的代理机器(因为透明网关可以安装在Server端,所以可能就是本地服务名)。接下来,透明网关所在的代理机器通过监听器接收到Oracle Server端的连接请求,运行程序tg4msql.exe实现到SQL Server的访问。

主机 操作系统 软件环境

ORADB Windows 2000 Professional Oracle 9.0.2 Database Standard Edition

GATEWAY Windows 2000 Professional Oracle 9.0.2 Database Standard Edition

SQLDB Windows 2000 Server SQL Server (访问的数据库 Billy_Test)

在这里需要先说明几点:

1、安装Transparent Gateway 必须先安装Oracle Database,单纯的客户端是没有Transparent Gateway的。

2、Transparent Gateway for Microsoft SQL Server目前只有NT版本,因此网关程序tg4msql仅包含在Oracle Database for windows中。

3、上面已经说过,透明网关可以安装在独立的机器上或者Oracle Server 和 非Oracle Server 端,在这里我采用的方法是Oracle Server,SQL Server, 透明网关分别在不同的机器上。

现在从SQLDB开始:

在SQLDB上创建将要从Oracle数据库访问SQL Server的用户user/password,并授予可访问Billy_test的权限;

接下来是GATEWAY:

1.安装好Oracle 9.0.2 Database for Windows后,会发现在%ORACLE_HOME%下有目录tg4msql,以及网关程序$ORACLE_HOMEBINtg4msql;

2. 修改%ORACLE_HOME%tg4msqlinittg4msql.ora,这是网关进程启动时需要的初始化文件。只需改下面这一行即可:

HS_FDS_CONNECT_INFO=SQLDB.CDR

3.修改%ORACLE_HOME%networkadminlistener.ora如下:

LISTENER =

(ADDRESS_LIST=

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

)

SID_LIST_LISTENER=

(SID_LIST=

(SID_DESC=

(SID_NAME=tg4msql)

(ORACLE_HOME=e:OracleOraHome_9I) #用你的%ORACLE_HOME%

(PROGRAM=tg4msql) # 必须指向‘tg4msql’

)

)

4. 重启透明网关的监听器。

最后是ORADB:

1.修改tnsnames.ora

TG4MSQL =

(DESCRIPTION =

(ADDRESS =

(PROTOCOL = TCP)

(HOST= GATEWAY) #透明网关所在机器地址

(PORT = 1521)

)

(CONNECT_DATA =

(SID = tg4msql) #tg4msql必须要和GATEWAY上listener.ora中的SID一致

)

(HS = OK) #这很重要,告诉Oracle Server要调用异构服务模块来处理

)

2.修改initora9i.ora(数据库初始化文件)

global_names=true,重启数据库。

否则会在执行sql时报错:ORA-02085: 数据库链接CDR与HO.WORLD相连结

原因如下:The GLOBAL_NAMES parameter when set to TRUE implies that database link name should be similar to the Global database name to which you are trying to connect.

3.创建访问SQLDB.CDR的数据库链接

SQL>create public database link test connect to user identified by password using ‘TG4MSQL’;

4.最后执行SQL测试看是否能正常访问SQL Server

SQL>select sysdate from dual@Billy_test;

oracle mysql 透明网关_如何在Oracle中建立透明网关相关推荐

  1. django 传递中文_如何在Django中建立消息传递状态

    django 传递中文 by Ogundipe Samuel 由Ogundipe Samuel 如何在Django中建立消息传递状态 (How to Build a Message Delivery ...

  2. oracle mysql 并发连接数_如何修改Oracle并发连接数的设置

    第一步,在cmd命令行,输入sqlplus 第二步,根据提示输入用户名与密码 1. 查看processes和sessions参数 SQL> show parameter processes SQ ...

  3. python 线性回归模型_如何在Python中建立和训练线性和逻辑回归ML模型

    python 线性回归模型 Linear regression and logistic regression are two of the most popular machine learning ...

  4. 单引号oracle如何转义_如何在Oracle中预测和转义单引号'

    Suppose I have a column value as aaa'gh it will throw error in oracle saying sql command not properl ...

  5. phpmyadmin执行mysql语句_如何在phpMyAdmin中执行sql语句

    大家使用phpMyAdmin中常遇到这样的问题:MySQL Error Message: MySQL Query Error SQL: SELECT main.*, field.* FROM ucho ...

  6. php7.2 mysql 教程_如何在PHP7中扩展mysql,先安装php7.2。后安装mysql

    相对与PHP5,PHP7的最大变化之一是移除了mysql扩展,推荐使用mysqli或者pdo_mysql,实际上在PHP5.5开始,PHP就着手开始准备弃用mysql扩展,如果你使用mysql扩展,可 ...

  7. dw中连接mysql数据库连接_如何在Dreamweaver中进行数据库连接

    其解决方法如下: ① 打开" c:\Intepud\wwwroot "文件夹,执行[打开]|[文件夹选项]菜单命令,在弹出的[文件夹选项]对话框中取消对[使用简单文件共享]的勾选, ...

  8. react 交互_如何在React中建立动画微交互

    react 交互 Microinteractions guide a user through your application. They reinforce your user experienc ...

  9. wordpress标签云_如何在WordPress中建立更好的标签云

    wordpress标签云 Once you've defined a great set of tags for your WordPress posts (or pages), you'll wan ...

最新文章

  1. java dateformat 线程安全_SimpleDateFormat线程安全问题深入解析
  2. shader 编程入门(一)
  3. Python爬取京东商品
  4. 本程序主要实现了一个方阵的求逆与实现了逆矩阵和原矩阵的乘积为单位矩阵
  5. (转发)一个通用的C++ 消息总线框架
  6. ubuntu 改linux密码忘了怎么办,Ubuntu 14.04忘记root密码的解决方法
  7. 使用Java的BlockingQueue实现生产者-消费者
  8. winform数据传递到html,C#下winform和JS的互相调用和传参(webbrowser)
  9. Table隔行变色的JavaScript代码
  10. 干货分享丨玩转物联网IoTDA服务系列四-智能网关
  11. oracle数据库进程不释放,Oracle数据库案例整理-Oracle系统运行时故障-无法释放已经结束的进程资源导致进程死锁...
  12. 整型数组——首尾相连
  13. WebKit的默认样式
  14. 学习计算机英语总结,英语学习方法总结
  15. Megahit, metaSPAdes, metabat2, GTDB-tk, checkM
  16. 一篇文章带你了解网络编程(总结)
  17. drools快速入门:简介、语法和结构
  18. Alfred Workflow 入门指南
  19. Verilog MIPS32 CPU(六)-- MDU
  20. Windows工作组环境下账户和组的管理

热门文章

  1. Hello Quartz (第一部分)
  2. jsp自定义标签详解(2)
  3. Runnable Thread分析比较
  4. 3种java实现多线程_实现java多线程的3种方式,99%人没用过第3种
  5. java连接oracle失败_程序连接oracle数据库失败
  6. 通讯录管理系统课设使用c编写基于链表增查删改分组文本操作随程序实时同步
  7. MySQL可以用localhost 连接,但不能用IP连接的问题
  8. HDU-2084(简单DP)
  9. pbxproj文件冲突解决办法
  10. spark on yarn 配置history server