异构服务提高Oracle连接数据源能力

幸运的洋28

幸运的洋28

2016-02-19 18:32

今天图老师小编给大家展示的是异构服务提高Oracle连接数据源能力,精心挑选的内容希望大家多多支持、多多分享,喜欢就赶紧get哦!

  由于历史的原因,在多数企业都同时存在多个数据库平台,在每个数据库平台上都运行着相关的一套或多套应用。随着单位业务不断扩大,如何在不影响现有应用运行的前提下,快速有效地整合这些分布在单位内部不同数据库平台上的数据,是一个困扰CIO们的问题。面对这一问题,现有解决方案大致可分为以下两种:

  1.在应用程序上建立连接不同数据源的数据连接,这样做要求程序员分清哪个连接是对应哪个数据库的,而且如果设计时涉及到存储过程还要按照不同数据库的要求分别编写,加重了程序员的要求。

  2.在数据库中设立快照,定时把其他数据源的数据复制到本地数据库,这样虽然解决了前一种方法中不同数据源的问题,但是由于是定时复制,数据不能实时同步,在实时性要求高的应用中这种方法便不能使用。

  由于上述两种方法都存在一定的缺点,这里介绍一种Oracle提供的解决oracle数据库与异种数据源的连接问题的解决方案—Oracle的异构服务(Heterogeneous Services)。

程序运行效果截图

  异构服务

  “异构服务”是集成在Oracle 8i数据库软件中的功能,它提供了从Oracle数据库访问其他非Oracle数据库的通用技术。熟悉Oracle的读者都很清楚,Oracle提供通过建立DB Link的方法访问非本地数据库,而“异构服务”提供通过建立DB Link使你能够执行Oracle SQL查询,透明地访问其他非Oracle数据库里的数据,就像访问Oracle远程数据库一样。“异构服务”分为两种:

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  1. 事务处理服务(Transation Service):通过事务处理服务,使用户在访问非Oracle数据库中支持事务处理功能。

  2. SQL服务: 通过SQL服务,使用户直接在Oracle数据库中执行对非Oracle数据库的各种SQL语句。

  根据异构服务代理程序的不同,“异构服务”连接方式可以分为透明网关和通用连接两种。

  透明网关(Transparent Gateways) 透明网关使用Oracle提供的特定网关程序来设置代理,例如连接SQL Server则必须要有SQL Transparent Gateway for SQL Server。

  通用连接(Generic Connectivity) 通用连接又分为ODBC连接和OLE DB连接两种,其连接方法和透明网关没有本质区别,只不过通用连接是和数据库一起提供的功能,你不需要向Oracle购买相关的透明网关程序。

  连接实例

  这个实例的应用环境是Oracle 8.1.7,操作系统Windows 2000 Server英文版,采用通用连接的ODBC for SQL Server连接SQL Server 2000中文版。安装步骤如下:

  1. 安装HS部件。

  缺省情况下,HS服务是和Oracle 8.1.7一起安装的,你可以查询SYS用户下是否存在HS_BASE_CAPS视图,以确认HS部件是否安装,如果没有可以用相关的安装盘进行安装。

  2. 配置ODBC系统连接字。

  在控制面板选择“Data Sources (ODBC)”,在“系统DNS”内配置ODBC for SQL Server连接字(dnsora2sql)。

  3.配置tnsnames.ora,它位于ORACLE_HOMENETWORKADMIN。

  在这个文件中增加如下代码:

  Lnk2sql=
  (DESCRIPTION=
  (ADDRESS_LIST=
  (ADDRESS=(PROTOCOL=TCP)(HOST=HOSTNAME)(PORT=1521)))
  (CONNECT_DATA=
  (SID=hs4sql)|服务的SID名称,要和Listener里配置的sid相同)
  (HS=OK)| 打开HS服务选项
  )

  4.配置listener.ora,它位于ORACLE_HOMENETWORKADMIN。

  在这个文件中增加如下代码:

  SID_LIST_LISTENER=
  (SID_LIST=
  (SID_DESC=
  (SID_NAME=hs4sql)| 服务的SID名称,与tnsname名称相对应
  (ORACLE_HOME=C:oracleora9201)
  (PROGRAM=hsodbc)| 要使用的HS服务程序,如果使用OLEDB,程序名为hsole)
  )

  5. 重新启动Oracle listener。

  6. 编辑位于ORACLE_HOMEHSADMIN内init.ora,这里是iniths4sql。

  修改如下两行代码:

  HS_FDS_CONNECT_INFO=dnsora2sql| ODBC系统名
  HS_FDS_TRACE_LEVEL=0

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  7. 创建DATABASE LINK。

  createdatabaselink‘ora2sql’connect
  tosql1identifiedbysql1using‘lnk2sql’;

  8. 测试连接。如:

  SQLselect*fromregion@ora2sql;

  到此我们已经完成了使用ODBC连接SQL SERVER的配置工作。

  总体上说,异构服务扩展了Oracle数据库连接异种数据源的能力,加强了企业数据的整合,是一个快速有效经济地整合企业内部异构数据的解决方案。

展开更多 50%)
分享

猜你喜欢

异构服务提高Oracle连接数据源能力

编程语言 网络编程
异构服务提高Oracle连接数据源能力

jsp连接数据库oracle

Web开发
jsp连接数据库oracle

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

JSP Servelet 数据源连接池的配置

Web开发
JSP Servelet 数据源连接池的配置

VB与大型数据库无数据源的连接

编程语言 网络编程
VB与大型数据库无数据源的连接

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Oracle数据库异构数据联结详解

编程语言 网络编程
Oracle数据库异构数据联结详解

Jsp连接Access数据库(不通过建立ODBC数据源的方法)

Web开发
Jsp连接Access数据库(不通过建立ODBC数据源的方法)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

MS Access 数据库向 MS SQL Server 7.0 的迁移 (简述)

MS Access 数据库向 MS SQL Server 7.0 的迁移 (简述)

CSS样式表中的类

CSS样式表中的类
下拉加载更多内容 ↓