Oracle RAC環境下的應用連續性

來源:互聯網
上載者:User

標籤:rac failover

  傳統企業比如銀行業和電信業的資料庫大多採用oracle rac+dataguard的高可用架構,在rac項目實施過程中,由於商務持續性的苛刻要求,高可用的實施和測試工作顯得尤為重要。

  oracle在新版本12cR2的rac官方文檔裡單獨列了一章叫Ensuring application Continuity,重視程度可見一斑。在以前的oracle10g以及11g的版本中,client為實現RAC failover(容錯移轉)特性,各類應用app以及db需要作各種配置調整工作,隨著oracle的12cR2新版本的到來,這些配置步驟變得更簡化。

  下面簡要總結oracle11gR2環境下的failover配置。

  首先根據是否使用了事先已經存在的串連(如串連池中的串連)將用戶端的串連分為Connect Time Connection Failover和Runtime Connection Failover,runtime首碼指串連已經存在的情況,比如使用了串連池。

  1、Connect Time Connection Failover 

    用戶端的tnsnames.ora中配置scan ip和service就可以實現串連資料庫時的Failover;

  2、Runtime Connection Failover

    oracle通過兩種手段來實現Runtime Connection Failover,分別為TAF(Transparent           Application Failover)和 FCF(Fast Connection Failover)。

   首先是TAF:

   它可以在 client 端的tnsnames.ora中的串連串裡定義,也可以在 server 端的 service 中定      義。TAF 僅對使用 OCI 串連的用戶端和串連池有效,這裡的 OCI 串連可以是在 OCI 串連上的封裝,比如 JDBC-OCI driver 就支援 TAF,但 JDBC thin driver 就不支援 TAF(因為 JDBC thin driver 不是基於 OCI 的)。

   其次是FCF:

   Fast Connection Failover,它實際上是用戶端通過訂閱 FAN HA events 來實現的。

   因為 JDBC thin 串連不是基於 OCI 的,所以這種情況下的 Runtime Connection Failover 不能使用 TAF,只能用 FCF。 

   如果想讓應用app具備TAF屬性,可進行簡單app改造:首先在app的client環境安裝oracle用戶端程式,然後將jdbc thin串連調整為jdbc oci的串連方式。 

   在oracle12cR2的版本中,failover可基於事務,且replay dml語句,相對於11g基於會話,failover功能又大大提升了。

  


Oracle RAC環境下的應用連續性

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.