首頁 資料庫 mysql教程 Oracle RAC 环境下的连接管理

Oracle RAC 环境下的连接管理

Jun 07, 2016 pm 05:18 PM
數位

这篇文章详细介绍了Oracle RAC环境下的连接管理,分别介绍了什么是 Connect Time Load Balancing、Runtime Connection Load Bala

这篇文章详细介绍了Oracle RAC环境下的连接管理,分别介绍了什么是 Connect Time Load Balancing、Runtime Connection Load Balancing、Connect Time Connection Failover 和 Runtime Connection Failover,以及里面所涉及到的 TAF、ONS、FCF、FAN、LBA 等诸多知识点。本文主要是针对 Oracle RAC 11gR2 环境下的连接管理,但同时也会对比说明一下 Oracle RAC 10gR2/9iR2,,以体现他们之间在连接管理上的差异。

所谓“连接管理”,主要体现在 Load Balancing 和 Failover 两方面。Oracle RAC 11gR2 下的 Load Balancing 和 Failover,根据是否使用了事先已经存在的连接(如连接池中的连接)又分为 Connect Time Load Balancing、Runtime Connection Load Balancing、Connect Time Connection Failover和Runtime Connection Failover 这 4 种类型,凡是带上了“Runtime”前缀的,就是指连接已经存在的情况,比如使用了连接池。

一、首先来介绍 Connect Time Connection Failover

Connect Time Connection Failover 是指不从连接池中取得已有连接,而是直接连接 Oracle 数据库时的 Failover。在 Oracle RAC 11gR2 之前,Connect Time Connection Failover 是非常容易实现的,只需要在相关的 tnsnames.ora 中指定多个 vip,同时指定 FAILOVER=ON 就好了。如下所示:

(DESCRIPTION= (FAILOVER=ON) (ADDRESS_LIST= (LOAD_BALANCE=OFF) (ADDRESS=(PROTOCOL=TCP)(HOST=RAC1-vip)(PORT=1521)) (ADDRESS=(PROTOCOL=TCP)(HOST=RAC2-vip)(PORT=1521)) (ADDRESS=(PROTOCOL=TCP)(HOST=RAC3-vip)(PORT=1521)) (ADDRESS=(PROTOCOL=TCP)(HOST=RAC4-vip)(PORT=1521)) ) (CONNECT_DATA=(SERVICE_NAME=RAC10g)) )

这里客户端进程首先会尝试连接 RAC1-vip,如果连不上,则会尝试RAC2-vip,再连不上,则会继续往下尝试,直到所有出现在 ADDRESS_LIST 中的 vip 地址全部顺序尝试完为止。这种客户端在连接 Oracle 数据库时的 Failover,不仅适用于 RAC 环境,也适用于 Data Guard 环境。如下所示:

DESCRIPTION= (FAILOVER=ON) (ADDRESS_LIST= (LOAD_BALANCE=OFF) (ADDRESS=(PROTOCOL=TCP)(HOST=primary-ip)(PORT=1521)) (ADDRESS=(PROTOCOL=TCP)(HOST=standby-ip)(PORT=1521)) ) (CONNECT_DATA=(SERVICE_NAME=service10g)) )

Oracle RAC 11gR2 引入了 SCAN(Single Client Access Name),并且客户端缺省是通过 SCAN 来连接整个 RAC 环境的,如下是 SCAN 的架构图:

如上图所示,如果使用了 DNS 或者 GNS (Grid Naming Service),那么最多可以有 3 个 SCAN VIP 和 3 个 SCAN Listener;如果没有使用 DNS 或者 GNS,而是选择使用 hosts 文件,则只会有 1 个 SCAN VIP 和 1 个 SCAN Listener。

这里假设在 tnsnames.ora 中这样配置:

(DESCRIPTION = (FAILOVER=ON) (ADDRESS = (PROTOCOL = TCP)(HOST = MySCAN)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME =RAC11g)))

严格意义上说,只有在 RAC 环境有 1 个以上 SCAN VIP 的时候,上述 FAILOVER=ON 才有意义——它表示的是客户端在连接 SCAN VIP 的时候,如果其中的一个 SCAN VIP 连不上,则马上会尝试另外一个 SCAN VIP。

当使用了 hosts 文件来指定 SCAN VIP 的时候,即在整个 RAC 环境只有 1 个 SCAN VIP 的情况下,Failover 其实也存在,只不过这种情况下 Failover 的速度会慢一些。因为当 SCAN VIP 所在的节点宕掉后,SCAN VIP 会和相关的 SCAN Listener 一起整体 Failover 到其他节点,只不过这个 Failover 需要时间,而客户端需要等待这个 Failover 过程完毕后才能重新连上 RAC。

二、接下来介绍 Runtime Connection Failover

Runtime Connection Failover 是指连接已经存在的情况下的 Failover。这个已存在的连接,可能是连接池中正在用的连接,也可能是不通过连接池、直接通过 OCI 客户端(如 sqlplus)连上 Oracle 数据库后的连接。

这种 Runtime Connection Failover,就是指在连接已经存在的情况下,如果 Oracle 数据库端出现了异常的情况(比如 Service 宕了、Instance 崩溃了、Session 断了)而导致已有连接中断,怎样 Failover 的问题。

有两种手段来实现 Runtime Connection Failover,分别为 TAF(Transparent Application Failover)和 FCF(Fast Connection Failover)。

linux

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1319
25
PHP教程
1269
29
C# 教程
1248
24
全球數字虛擬幣交易平台排行榜前十(2025權威排名) 全球數字虛擬幣交易平台排行榜前十(2025權威排名) Mar 06, 2025 pm 04:36 PM

2025年全球數字虛擬幣交易平台競爭激烈,本文根據交易量、安全性、用戶體驗等指標,權威發布2025年全球十大數字虛擬幣交易平台排行榜。 OKX憑藉強大的技術實力和全球化運營策略居首,Binance以高流動性和低費用緊隨其後。 Gate.io、Coinbase、Kraken等平台憑藉各自優勢穩居前列。榜單涵蓋Huobi、KuCoin、Bitfinex、Crypto.com和Gemini等交易平台,各有特色,但投資需謹慎。選擇平台需考慮安全性、流動性、費用、用戶體驗、幣種選擇及監管合規性等因素,理性投資

C程式用來求出一個數的最大質因子 C程式用來求出一個數的最大質因子 Aug 27, 2023 am 10:09 AM

質因數 - 在數論中,正整數的質因數是精確整除該整數的質因數。找出這些數字的過程稱為整數分解或質因數分解。例 - 288 的質因數是:288=2x2x2x2x2

幣圈十大交易所2025年最新 數字貨幣app排行榜前十 幣圈十大交易所2025年最新 數字貨幣app排行榜前十 Feb 27, 2025 pm 06:33 PM

虛擬貨幣十大交易平台排行榜(2025年最新): 幣安:全球龍頭,高流動性,監管受關注。 OKX:龐大用戶基數,支持多種幣種,提供槓桿交易。 Gate.io:資深交易所,多種法幣支付方式,提供多種交易對和投資產品。 Bitget:衍生品交易所,高流動性,低費用。 火幣:老牌交易所,支持多種幣種和交易對。 Coinbase:美國知名交易所,受監管嚴格。 Phemex等等。

十大數字貨幣交易平台 數字貨幣交易平台top10榜單最新 十大數字貨幣交易平台 數字貨幣交易平台top10榜單最新 Mar 17, 2025 pm 05:57 PM

十大數字貨幣交易平台:1. OKX,2. Binance,3. Gate.io,4. Huobi Global,5. Kraken,6. Coinbase,7. KuCoin,8. Bitfinex,9. Crypto.com,10. Gemini,這些交易所各具特色,用戶可根據安全性、費用、幣種選擇、用戶界面和客戶支持等因素選擇適合自己的平台。

數字貨幣app十大交易平台 炒幣正規平台app推薦 數字貨幣app十大交易平台 炒幣正規平台app推薦 Mar 07, 2025 pm 06:51 PM

本文推薦十個數字貨幣交易App:1. OKX;2. Binance;3. Gate.io;4. Huobi Global;5. Kraken;6. Coinbase;7. KuCoin;8. Crypto.com;9. Bitfinex;10. Poloniex。選擇平台需考慮安全性、流動性、交易費用、幣種選擇、用戶界面、客服支持及法規合規性等因素,謹慎評估風險,切勿盲目跟風。

全球十大虛擬幣交易平台app正版下載安裝教程 全球十大虛擬幣交易平台app正版下載安裝教程 Mar 12, 2025 pm 05:33 PM

本文提供Binance、OKX、Gate.io、Huobi Global(火幣)、Coinbase、KuCoin(庫幣)、Kraken和Bitfinex等主流數字貨幣交易平台的安卓和蘋果手機APP下載方法。無論是安卓用戶還是蘋果用戶,都能輕鬆找到對應平台的官方APP下載鏈接,並按照步驟完成安裝。 文章詳細指導了在各自官網或應用商店搜索下載,並針對安卓系統安裝APK文件的特殊步驟做了說明,方便用戶快速便捷地下載使用。

靠譜的數字貨幣平台有哪些 十大正規數字貨幣交易平台2025 靠譜的數字貨幣平台有哪些 十大正規數字貨幣交易平台2025 Mar 17, 2025 pm 05:45 PM

靠譜的數字貨幣平台包括:1. OKX,2. Binance,3. Gate.io,4. Huobi Global,5. Kraken,6. Coinbase,7. KuCoin,8. Bitfinex,9. Crypto.com,10. Gemini,這些交易所各具特色,用戶可根據安全性、費用、幣種選擇、用戶界面和客戶支持等因素選擇適合自己的平台。

十大數字虛擬幣交易所推薦 正規的數字貨幣交易app排行榜 十大數字虛擬幣交易所推薦 正規的數字貨幣交易app排行榜 Mar 17, 2025 pm 05:33 PM

十大數字虛擬幣交易所包括:1. OKX,2. Binance,3. Gate.io,4. Huobi Global,5. Kraken,6. Coinbase,7. KuCoin,8. Bitfinex,9. Crypto.com,10. Gemini,這些交易所各具特色,用戶可根據安全性、費用、幣種選擇、用戶界面和客戶支持等因素選擇適合自己的平台。

See all articles