Oracle中HA、RAC、Datagurad區別

HA是High Availability 的首字母組合,翻譯過來,能夠叫作高可用,或高可用性,高可用(環境)。我以爲應該說HA是一個觀念而不是一項或一系列具體技術,就象網格同樣。做過系統方案就知道了,評價系統的性能當中就有一項高可用。廣義的高可用涉及到系統的各個方面,簡單來講,讓系統不會中斷運行,就是高可用。包括軟件的高可用,硬件的高可用,網絡的高可用等等。具體實現的方案包括操做系統的集羣,數據庫的集羣,硬件的冗餘,網絡的冗餘等等。作HA方面的軟件,有IBM的HACMP(不少經常使用AIX的人,常說的HA就指HACMP,亂啊)、SUN的Sun Cluster、HP的MC/SG等。數據庫

在2000年之前,你們談HA,大部分時候說的是操做系統一級的雙機熱備,主流產品當時有IBM HACMP4.1,HP的MC/SG啥版本忘了,sun的系統不少人不用VCS,用的是一個叫dataware的東西。如今不少人眼中的HA也仍是這樣。時至今日,HA包括的東西可就多了,先不說其餘方面,單就數據庫,單就Oracle,與HA相關的產品前後有:高級複製(AdvanceRepication)、OPS/RAC(Real Application Cluster)、數據衛士(Data Guard)、oracle流(Oracle Streams)、分區(Oracle Partition)這樣數款產品。照這麼說,RAC只是HA這個概念下的一個具體產品而已!目前爲止,只有RAC和分區是Oracle要收取licence的,其餘的,只要給經驗豐富的第三方實施方付必定的規劃/設計及部署費用就能夠了;固然,也能夠本身照着文檔依葫蘆畫瓢,可是這樣弄出的環境是否能達到高可用就難說了。事實上,大部分人所說的HA,仍是狹義上的HA,也就是OS一級的雙機熱備。網絡

RAC是real application cluster的簡稱,它是在多個主機上運行一個數據庫的技術,便是一個db多個instance.它的好處是能夠由多個性能較差的機器構建出一個總體性能很好的集羣,而且實現了負載均衡,那麼當一個節點出現故障時,其上的服務會自動轉到另外的節點去執行,用戶甚至感受不到什麼。oracle

雙機熱備(HA)和RAC有啥區別呢?app

一、對於硬件來講,基本上同樣,共享存儲、光纖線(也有還用SCSI線的)、多臺小型機(能夠作多節點的相互熱備,也能夠作多節點的RAC)、光纖交換機(若是是用光纖卡的話);但作RAC,在主機之間,最好使用高帶寬網絡交換機(雖然不用也能夠作成);所以硬件成本相差不大。負載均衡

二、軟件呢,差異可不小。若是是雙機熱備,必須買操做系統級的雙機管理軟件;若是是RAC,目前仍是建議購買雙機管理軟件(儘管10g的crs+asm能夠擺脫雙機軟件了,但ASM目前實在太難伺候了),固然還得買RAC license.性能

三、平常維護。RAC要求的技術含量更高,也應該更勤快。最關鍵的是得買oracle服務,不然遇到有些問題(bug),你就比單機還不高可用了。操作系統

四、優缺點。這個,看看RAC的官方論述吧。若是能用好,確實是頗有好處的。目前咱們的40多個客戶的使用狀況來看,RAC確實大大下降了他們的downtime,另外一方面能夠說就是提升了生產力咯。翻譯

Dataguard通常是出於容災的目的。是主數據庫的備用庫(standby 庫)經過自動傳送和接受archivelog,而且在dataguard庫自動apply 這些log,從而達到和主數據庫同步的目的,可能dataguard 庫是創建的異地的,當主庫所在的區域出現了致命性的災難時(火災、地震等),主庫無法修復時,這時能夠切換dataguard 爲主庫的模式,對外提供服務,而它的數據基本是當前最新的。目前可能你們對於 dataguard 庫的使用已經拓展出了其餘更多的用途,好比備份,跑報表等。設計

相關文章
相關標籤/搜索