亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Oracle > 正文

ORACLE 8i的普通連接技術的介紹

2024-08-29 13:49:28
字體:
來源:轉載
供稿:網友

  
Oracle 8i的普通連接技術的介紹

====================================

歡迎大家同我交流:小白  enhydra_boy@tom.com

歡迎轉載,請保留本聲明,謝謝!

====================================

 

Oracle 8.1.6 中引入普通連接技術的概念(Generic connectivity),這一連接解決方案滿足了對許多異種數據庫存儲的數據訪問需求,同時并不需要安裝ORACLE的透明網關(ORACLE Transparent Gateway)。該特性答應使用業界標準 ODBC 和 OLEDB 建立透明連接。

什么是普通連接(Generic connectivity)

普通連接是ORACLE的一個低端數據集成解決方案,目標是提供ORACLE 8i可以連接到非oracle數據庫的能力。它的實現,是通過異種服務代理(Heterogeneous Services)來實現的。

異種服務代理的類型:
ODBC agent for accessing ODBC data PRovidersOLE DB agent for accessing OLE DB data providers that support SQL processing--sometimes referred to as OLE DB (SQL)ODBC agent for acceng OLE DB data providers without SQL processing support--sometimes referred to as OLE DB (FS)
普通連接的系統結構圖



ORACLE客戶端程序訪問非ORACLE數據庫的過程:客戶端程序是通過SQL*NET連接ORACLE服務器,關于異種數據庫的訪問,交給HS代理實現。

HS代理通過下面的功能組件實現:ODBC治理器->ODBC驅動程序->數據庫的網絡客戶端->目標數據庫。

假如異種庫和ORACLE數據庫位于同一臺服務器上,一般來說驅動程序是可以直接和本機的數據庫通訊,就可以省去數據庫的網絡客戶端這一層。

數據類型的轉換

ORACLE自動實現ODBC和OLEDB數據類型到ORACLE數據類型的轉換,具體的對應轉換可以參考ORACLE的聯機幫助http://download-west.oracle.com/docs/cd/A87860_01/doc/server.817/a76960/datatype.htm。

普通連接的限制

1          含有BLOB列的表必須要有一個主鍵字段;

2          BLOB/CLOB數據不直接通過pass-through的查詢方式;

3          在WHERE子句中包括了函數的Updates或deletes語句不被答應;

4          不支持存儲過程的調用;

HS代理(odbc/oledb)不支持分布式事務(distributed transactions),只支持單點的事務(single-site transactions)。

普通連接代理的配置

下面,我介紹一下,利用普通連接的ODBC配置。利用HS odbc代理連接SQL SERVER 2000。

第一步初始化文件的建立

首先,你必須要創建初始化文件。ORACLE提供了樣例初始化文件,名字是init<agent>.ora,<agent>可能是hsodbc,hsoledb,hsolefs,分別代表了三種類型的代理,位于$ORACLE_HOME/HS/ADMIN下。

把對應的文件復制一份出來,并且改名為init<HS_SID>.ora,<HS_SID>是你SQL SERVER ODBC代理起的別名。

復制并創建了一個inithssql2k.ora文件,編輯inithssql2k.ora文件。參數有:


# This is a sample agent init file that contains the HS parameters that are

# needed for an ODBC Agent.

 

#

# HS init parameters

#

#HS_FDS_CONNECT_INFO = <odbc data_source_name>

#HS_FDS_TRACE_LEVEL = <trace_level>

HS_FDS_CONNECT_INFO = SQL2K

HS_FDS_TRACE_LEVEL = ON

HS_AUTOREGISTER = TRUE

 

#

# Environment variables required for the non-Oracle system

#

#set <envvar>=<value>


第二步 創建異種服務代理的數據字典

執行$ORACLE_HOME/rdbms/admin/caths.sql,創建相關的系統表和視圖。


第三步 創建異種服務代理的工作環境

添加hssql2k的偵聽服務,$ORACLE_HOME/NETWORK/ADMIN/listener.ora


SID_DESC=

     (SID_NAME=hssql2k)

       (ORACLE_HOME=d:/oracle/ora81)

      (PROGRAM=hsodbc)

    )


修改$ORACLE_HOME/NETWORK/ADMIN/tnsnames.ora,添加一個網絡服務名

sql2k,將在后面創建數據庫聯接時用到。


sql2k =

(DESCRipTION=

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

     (CONNECT_DATA=(SID=hssql2k))

     (HS=OK)

 )


重新啟動偵聽,并且察看服務狀態


LSNRCTL for 32-bit Windows: Version 8.1.7.0.0 - ProdUCtion on 02-JUL-2003 12:49:

30

 

(c) Copyright 1998 Oracle Corporation.  All rights reserved.

 

Welcome to LSNRCTL, type "help" for information.

 

LSNRCTL> status

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SAM)(PORT=1521)))

STATUS of the LISTENER

------------------------

Alias                     LISTENER

Version                   TNSLSNR for 32-bit Windows: Version 8.1.7.0.0 - Produ

tion

Start Date                02-JUL-2003 11:08:31

Uptime                    0 days 1 hr. 41 min. 2 sec

Trace Level               off

Security                  OFF

SNMP                      OFF

Listener Parameter File   d:/oracle/ora81/network/admin/listener.ora

Listener Log File         d:/oracle/ora81/network/log/listener.log

Services Summary...

  ORCL          has 1 service handler(s)

  ORCL          has 3 service handler(s)

  PLSExtProc            has 1 service handler(s)

  hssql2k               has 1 service handler(s)

The command completed successfully

LSNRCTL>


Hssql2k的偵聽服務已經正常運行了。


 

第四步 修改數據庫啟動參數文件

修改數據庫啟動參數文件,設置global_names=false,假如設置為true(缺省),那么數據庫連接名和全局數據庫名一樣,這將會導致ORA-02085的錯誤。

 

第五步 創建訪問non-oracle數據庫的連接(Database Link)

   在sqlplus中,執行create database link命令。Connect to 指定了連接到SQL SERVER的用戶名和密碼。


 

SQL>create public database link sql2k connect to sa identified by manager using ‘sql2k’;

Database link created.

 


 

第六步 測試


Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production

With the Partitioning option

JServer Release 8.1.7.0.0 - Production

 

SQL> connect scott/tiger;

Connected.

SQL> select count(*) from sysobjects@sql2k;

 

  COUNT(*)

----------

       135


 

現在,oracle已經可以訪問sqlserver數據庫了。以上都是,筆者參考了oracle的聯機幫助,并且實際測試的經過。筆者同時也發現,采用hsodbc其實也并不是很穩定,有的sql語句會引起hsodb agent的致命錯誤,同時有很多限制,采用透明網關應該就可以獲得很好的效果。

但是, oracle 8i的這個特性,可以不安裝額外的Transparent Gateway產品。因此,只要能夠滿足應用的數據訪問要求,采用Generic connectivity也不失為一個快速,經濟的方法。

筆者的測試環境:Windows2000 Server+ORACLE 8i(8.1.7)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品国产69国产精品亚洲| 亚洲国产精品va在线看黑人动漫| 久久婷婷国产麻豆91天堂| 国产一区av在线| 中文字幕欧美亚洲| 欧美日本中文字幕| 国产亚洲aⅴaaaaaa毛片| 欧洲美女免费图片一区| 国产精品入口尤物| 国产视频一区在线| 亚洲精品一区中文字幕乱码| 精品久久久久久中文字幕| 最新69国产成人精品视频免费| 亚洲精品一区二区网址| 国产午夜精品美女视频明星a级| 欧美激情啊啊啊| 国产精品69av| 视频在线一区二区| 日韩av在线看| 91免费看国产| 一区二区三区天堂av| 亚洲大胆人体在线| 九九热精品视频| 欧美性极品xxxx做受| 亚洲自拍另类欧美丝袜| 亚洲视频国产视频| 91chinesevideo永久地址| 亚洲激情在线观看视频免费| 久久久亚洲欧洲日产国码aⅴ| 亚洲国内精品在线| 国产伦精品免费视频| 欧美放荡办公室videos4k| 欧美日韩激情小视频| 亚洲影视中文字幕| 久久久国产一区二区三区| 亚洲成人免费在线视频| 热久久视久久精品18亚洲精品| 欧美丰满少妇xxxxx| 夜色77av精品影院| 欧美亚洲一级片| 国产精品视频一区二区三区四| 久久久久久久久久久国产| 亚洲第一区第一页| 日韩在线中文字幕| 欧美激情精品久久久久| 国产精品www网站| 亚洲精品97久久| 亚洲精品国产福利| 尤物yw午夜国产精品视频| 中文字幕亚洲精品| 成人精品一区二区三区电影免费| 成人在线视频福利| 中文字幕久久精品| 性视频1819p久久| 久久亚洲精品中文字幕冲田杏梨| 成人午夜黄色影院| 亚洲国产精品久久久久秋霞不卡| 一本色道久久88综合日韩精品| 中文字幕日韩欧美在线视频| 4438全国亚洲精品在线观看视频| 欧美午夜丰满在线18影院| 精品亚洲国产视频| 久久天天躁夜夜躁狠狠躁2022| 欧美日韩国产二区| 福利视频第一区| 国产精品美女无圣光视频| 欧美日韩亚洲系列| 久久人体大胆视频| 久久久久久久久国产精品| 92看片淫黄大片欧美看国产片| 中文字幕亚洲色图| www.午夜精品| 国产黑人绿帽在线第一区| 欧美激情在线观看| 国产精彩精品视频| 成人午夜黄色影院| 亚洲影院色在线观看免费| 色婷婷综合久久久久中文字幕1| 亚洲欧美一区二区三区情侣bbw| 8090理伦午夜在线电影| 国产精品免费网站| 久久久久久网址| 亚洲人午夜精品| 欧美又大又粗又长| 精品美女国产在线| 日韩一区在线视频| 韩曰欧美视频免费观看| 亚洲欧洲一区二区三区在线观看| 国产精品久久久久久久久久小说| 国产视频亚洲精品| 亚洲一区制服诱惑| 午夜精品美女自拍福到在线| 亚洲欧洲成视频免费观看| 色综合久久悠悠| 欧美一乱一性一交一视频| 久久精品国产欧美激情| 成人日韩av在线| 亚洲精品99久久久久| 中文字幕亚洲综合| 另类图片亚洲另类| 亚洲va欧美va国产综合剧情| 欧美激情喷水视频| 中文字幕亚洲二区| 中文字幕精品视频| 性欧美长视频免费观看不卡| 色婷婷综合成人av| 亚洲精品一区久久久久久| 超碰日本道色综合久久综合| 亚洲人成电影在线观看天堂色| 成人欧美一区二区三区在线湿哒哒| 日韩av在线资源| 日韩男女性生活视频| 久久手机精品视频| 国产精品久久久久久久久久尿| 亚洲男人第一av网站| 青青a在线精品免费观看| 日韩电影免费在线观看中文字幕| 中文字幕在线观看亚洲| 国产精品视频永久免费播放| 夜夜嗨av色综合久久久综合网| 国产精品久久久久久久7电影| 亚洲缚视频在线观看| 欧美黑人xxxx| 国产大片精品免费永久看nba| 91精品国产91久久久久| 亚洲美女福利视频网站| 亚洲国产欧美日韩精品| 欧美日韩在线第一页| 日韩电影大全免费观看2023年上| 国产日韩在线看| 欧美精品在线免费| 亚洲女人天堂视频| 欧美日韩国产限制| 亚洲成人激情在线观看| 亚洲级视频在线观看免费1级| 欧美激情精品久久久久久黑人| 成人免费视频在线观看超级碰| 日韩久久午夜影院| 欧美日韩免费观看中文| 精品香蕉在线观看视频一| 色婷婷av一区二区三区久久| 日韩免费在线播放| 亚洲视频在线看| 97在线视频免费播放| 欧美专区在线视频| 亚洲欧美成人在线| 欧美午夜www高清视频| 久久这里有精品视频| 日本精品性网站在线观看| 高清亚洲成在人网站天堂| 亚洲视频在线观看免费| 国产亚洲精品久久久久久牛牛| 在线视频亚洲欧美| 成人亚洲激情网| 97热精品视频官网| 欧美视频在线视频| 国产精品黄页免费高清在线观看| 91亚洲精华国产精华| 国产精品一区二区三区在线播放| 大荫蒂欧美视频另类xxxx| 欧美成人午夜免费视在线看片| 成人天堂噜噜噜| 成人黄色av免费在线观看| 欧美色欧美亚洲高清在线视频|