1. 程式人生 > >oracle雙機/RAC/Dataguard的區別

oracle雙機/RAC/Dataguard的區別

高可用性解決方案分為4種 (DG、AR、RAC、HA):

一種是oracle提供的被用方法,Standby (=9i DataGuard)

一種是AR (高階複製Advanced Replication,在以前版本叫快照snapshot)

一種是oracle並行伺服器8i的OPS (9i RAC,Real Application Cluster)

一種是第三方HA解決方案(如Rose HA,故障切換時間是幾分鐘,也叫雙機)

各自側重點:

HA 側重於業務的自動接管,自動接管需要幾分鐘時間,且長期有一組Instance閒置,浪費資源,不能容災。

DG 側重於容災,獨立儲存,但兩者資料不能做到實時同步。

RAC側重於負載均衡,但共享儲存不能容災。

詳細說明:

HA雙機熱備由兩臺計算機和一個共享儲存裝置構成,通過第三方軟體(HA Rose等)實現切換,不需要做資料同步。

DG Data Guard 是oracle的遠端複製技術,由兩個多兩個以上的獨立的資料庫構成,他們各自有各自的儲存,Oracle負責他們之間的切換和資料同步,它需要在異地有一套獨立的系統,兩套硬體配置可以不同的系統,但是這兩套系統的軟體結構保持一致,包括軟體的版本,目錄儲存結構,以及資料的同步(其實也不是實時同步的),這兩套系統之間只要網路是通的就可以了,是一種異地容災的解決方案。

RAC本地的高可用叢集,RAC是多節點,每個節點一個INSTANCE,是保證應用的,只要有一個節點是正常執行的,就能連線到資料庫,每個節點用來分擔不同或相同的應用,以解決運算效率低下、單節點故障這樣的問題,它是幾臺硬體相同或不相同的伺服器,加一個SAN(共享的儲存區域)來構成的。

各自的應用:

如是業務不要求24x7,可以考慮用dg。一臺機器用於生成報表和查詢;一臺只用於一般的業務處理。dg主要用容災,雙機、RAC均是提供可用性,但他們實現的方法不同,資料庫均放在共享裝置上。

雙機就是人們所說的雙機熱備,資料庫放在共享裝置上,同一時刻只能有一臺主機接管,另一臺待用,這種方式只能保護例項,不能保護db,而且備機長期處於閒置,對資源是一種極大的浪費!

建議應用RAC+Dataguard ,RAC保證可用性,Dataguard在RAC組獨立磁碟上和另外一臺主機上,保證可靠性。

如果原本是雙機,建議轉換為RAC;規劃好應用,DML操作從一個節點跑,查詢操作從另一個節點跑,通常不需要太多調優就可以利用閒置的另外一臺機器了。

RAC伺服器共用一套儲存,同時提供服務,沒有主備之分,宕一個其它的可以繼續服務;雙機熱備,共用一套儲存,一個提供服務一個備份,主機宕了切換到備份伺服器提供服務;data guard 完全兩套系統,儲存是單獨的,用日誌同步。

RAC:例項層冗餘;

DG :資料庫層冗餘;

熱備:僅僅只是資料冗餘。