最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Oracle的高可用集群方案有哪些

這篇文章主要介紹“Oracle的高可用集群方案有哪些”,在日常操作中,相信很多人在Oracle的高可用集群方案有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”O(jiān)racle的高可用集群方案有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、成都網(wǎng)站建設與策劃設計,沂南網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設10年,網(wǎng)設計領(lǐng)域的專業(yè)建站公司;建站業(yè)務涵蓋:沂南等地區(qū)。沂南做網(wǎng)站價格咨詢:18980820575

Oracle的三種高可用集群方案

1 RAC(Real Application Clusters)

                       Oracle的高可用集群方案有哪些

多個Oracle服務器組成一個共享的Cache,而這些Oracle服務器共享一個基于網(wǎng)絡的存儲。這個系統(tǒng)可以容忍單機/或是多機失敗。不過系統(tǒng)內(nèi)部的多個節(jié)點需要高速網(wǎng)絡互連,基本上也就是要全部東西放在在一個機房內(nèi),或者說一個數(shù)據(jù)中心內(nèi)。如果機房出故障,比如網(wǎng)絡不通,那就壞了。所以僅僅用RAC還是滿足不了一般互聯(lián)網(wǎng)公司的重要業(yè)務的需要,重要業(yè)務需要多機房來容忍單個機房的事故。

2 Data Guard.(最主要的功能是冗災)

 Oracle的高可用集群方案有哪些

Data Guard這個方案就適合多機房的。某機房一個production的數(shù)據(jù)庫,另外其他機房部署standby的數(shù)據(jù)庫。Standby數(shù)據(jù)庫分物理的和邏輯的。物理的standby數(shù)據(jù)庫主要用于production失敗后做切換。而邏輯的standby數(shù)據(jù)庫則在平時可以分擔production數(shù)據(jù)庫的讀負載。

3 MAA

Oracle的高可用集群方案有哪些

MAA(Maximum Availability Architecture)其實不是獨立的第三種,而是前面兩種的結(jié)合,來提供最高的可用性。每個機房內(nèi)部署RAC集群,多個機房間用Data Guard同步。

RAC概述

共享存儲文件系統(tǒng)(NFS),或甚至集群文件系統(tǒng)(如:OCFS2)主要被用于存儲區(qū)域網(wǎng)絡(所有節(jié)點直接訪問共享文件系統(tǒng)上存儲器),這就使得節(jié)點失效而不影響來自其他節(jié)點對文件系統(tǒng)的訪問,通常,共享磁盤文件系統(tǒng)用于高可用集群。

Oracle RAC的核心是共享磁盤子系統(tǒng),集群中所有節(jié)點必須能夠訪問所有數(shù)據(jù)、重做日志文件、控制文件和參數(shù)文件,數(shù)據(jù)磁盤必須是全局可用的,允許所有節(jié)點訪問數(shù)據(jù)庫,每個節(jié)點有它自己的重做日志和控制文件,但是其他節(jié)點必須能夠訪問它們以便在那個節(jié)點出現(xiàn)系統(tǒng)故障時能夠恢復。

Oracle RAC 運行于集群之上,為 Oracle 數(shù)據(jù)庫提供了最高級別的可用性、可伸縮性和低成本計算能力。如果集群內(nèi)的一個節(jié)點發(fā)生故障,Oracle 將可以繼續(xù)在其余的節(jié)點上運行。Oracle 的主要創(chuàng)新是一項稱為高速緩存合并的技術(shù)。高速緩存合并使得集群中的節(jié)點可以通過高速集群互聯(lián)高效地同步其內(nèi)存高速緩存,從而最大限度地低降低磁盤 I/O。高速緩存最重要的優(yōu)勢在于它能夠使集群中所有節(jié)點的磁盤共享對所有數(shù)據(jù)的訪問。數(shù)據(jù)無需在節(jié)點間進行分區(qū)。Oracle 是唯一提供具備這一能力的開放系統(tǒng)數(shù)據(jù)庫的廠商。其它聲稱可以運行在集群上的數(shù)據(jù)庫軟件需要對數(shù)據(jù)庫數(shù)據(jù)進行分區(qū),顯得不切實際。企業(yè)網(wǎng)格是未來的數(shù)據(jù)中心,構(gòu)建于由標準化商用組件構(gòu)成的大型配置之上,其中包括:處理器、網(wǎng)絡和存儲器。Oracle RAC 的高速緩存合并技術(shù)提供了最高等級的可用性和可伸縮性。Oracle 數(shù)據(jù)庫 10g 和 OracleRAC 10g 顯著降低了運營成本,增強了靈活性,從而賦予了系統(tǒng)更卓越的適應性、前瞻性和靈活性。動態(tài)提供節(jié)點、存儲器、CPU 和內(nèi)存可以在實現(xiàn)所需服務級別的同時,通過提高的利用率不斷降低成本。

RAC 集成集群件管理

Oracle RAC 10g 在 Oracle 數(shù)據(jù)庫 10g 運行的所有平臺上提供了一個完整集成的集群件管理解決方案。這一集群件功能包括集群連接、消息處理服務和鎖定、集群控制和恢復,以及一個工作負載管理框架(將在下文探討)。Oracle RAC 10g 的集成集群件管理具有以下優(yōu)勢:

(一) 成本低。Oracle 免費提供這一功能。

(二) 單一廠商支持。消除了相互推諉的問題。

(三) 安裝、配置和持續(xù)維護更簡單。Oracle RAC 10g 集群件使用標準 Oracle 數(shù)據(jù)庫管理工具進行安裝、配置和維護。這一過程無須其它的集成步驟。

(四) 所有平臺,質(zhì)量始終如一。與第三方產(chǎn)品相比,Oracle 對新軟件版本進行了更嚴格的測試。

(五) 所有平臺,功能始終如一。例如,一些第三方集群件產(chǎn)品限制了集群內(nèi)可以支持的節(jié)點的數(shù)量。借助Oracle RAC 10g,所有平臺可以支持多達 64 個節(jié)點。用戶還可以在所有平臺上獲得一致的響應體驗,從而有效解決了高可用性挑戰(zhàn),包括服務器節(jié)點故障、互連故障以及 I/O 隔離現(xiàn)象等。

(六) 支持高級功能。這包括集成監(jiān)視和通知功能,從而在發(fā)生故障時,在數(shù)據(jù)庫和應用層之間實現(xiàn)快速協(xié)調(diào)的恢復。

RAC 的體系結(jié)構(gòu)

RAC 是 Oracle 數(shù)據(jù)庫的一個群集解決方案,是有著兩個或者兩個以上的數(shù)據(jù)庫節(jié)點協(xié)調(diào)運作能力的。如下圖所示的 RAC 結(jié)構(gòu)圖:

Oracle的高可用集群方案有哪些

集群管理器(Cluster Manager)在集群系統(tǒng)中對其他各個模塊進行整合,通過高速的內(nèi)連接來提供群集節(jié)點之間的通信。各節(jié)點之間內(nèi)連接使用心跳線互聯(lián),心跳線上的信息功能確定群集邏輯上的節(jié)點成員信息和節(jié)點更新情況,以及節(jié)點在某個時間點的運行狀態(tài),保證群集系統(tǒng)正常運行。通信層管理節(jié)點之間的通信。它的職責是配置,互聯(lián)群集中節(jié)點信息,在群集管理器中使用由心跳機制產(chǎn)生的信息,由通信層負責傳輸,確保信息的正確到達。還有一些群集監(jiān)視進程不斷驗證系統(tǒng)的不同領(lǐng)域運行狀況。例如,心跳監(jiān)測不斷驗證的心跳機制的運作是否良好。在一個應用環(huán)境當中,所有的服務器使用和管理同一個數(shù)據(jù)庫,目的是分散每一臺服務器的工作量。硬件上至少需要兩臺以上的服務器,而且還需要一個共享存儲設備;同時還需要兩類軟件,一類是集群軟件,另外一類就是 Oracle 數(shù)據(jù)庫中的 RAC 組件。同時所有服務器上的 OS 都應該是同一類 OS,根據(jù)負載均衡的配置策略,當一個客戶端發(fā)送請求到某一臺服務的 listener 后,這臺服務器根據(jù)負載均衡策略,會把請求發(fā)送給本機的 RAC組件處理,也可能會發(fā)送給另外一臺服務器的 RAC 組件處理,處理完請求后,RAC 會通過群集軟件來訪問共享存儲設備。邏輯結(jié)構(gòu)上看,每一個參加群集的節(jié)點有一個獨立的實例,這些實例訪問同一個數(shù)據(jù)庫。節(jié)點之間通過集群軟件的通信層(Communication Layer)來進行通信。同時為了減少 I/O 的消耗,存在一個全局緩存服務,因此每一個數(shù)據(jù)庫的實例,都保留了一份相同的數(shù)據(jù)庫 cache。RAC 中的特點如下:

  • l 每一個節(jié)點的實例都有自己的 SGA;

  • l 每一個節(jié)點的實例都有自己的后臺進程

  • l 每一個節(jié)點的實力都有自己的 redo logs

  • l 每一個節(jié)點的實例都有自己的 undo 表空間

  • l 所有節(jié)點都共享一份 datafiles 和 controlfiles

RAC 的結(jié)構(gòu)組成和機制

在 Oracle9i 之前,RAC 稱為 OPS(Oracle Parallel Server)。RAC 與 OPS 之間的一個較大區(qū)別是,RAC 采用了Cache Fusion(高緩存合并)技術(shù),節(jié)點已經(jīng)取出的數(shù)據(jù)塊更新后沒有寫入磁盤前,可以被另外一個節(jié)點更新,然后以最后的版本寫入磁盤。在 OPS 中,節(jié)點間的數(shù)據(jù)請求需要先將數(shù)據(jù)寫入磁盤,然后發(fā)出請求的節(jié)點才可以讀取該數(shù)據(jù)。使用 Cache Fusion 時,RAC 的各個節(jié)點間數(shù)據(jù)緩沖區(qū)通過高速、低延遲的內(nèi)部網(wǎng)絡進行數(shù)據(jù)塊的傳輸。下圖是一個典型的 RAC 對外服務的示意圖,一個 Oracle RAC Cluster 包含了如下的部分

Oracle的高可用集群方案有哪些

  1. 集群的節(jié)點(Cluster node)——2 個到 N 個節(jié)點或者主機運行 Oracle Database Server。

  2. 私有網(wǎng)絡(Network Interconnect)——RAC 之間需要一個高速互聯(lián)的私有網(wǎng)絡來處理通信和 Cache Fusion。

  3. 共享存儲(shared Storage)——RAC 需要共享存儲設備讓所有的節(jié)點都可以訪問數(shù)據(jù)文件。

  4. 對外服務的網(wǎng)絡(Production Network)——RAC 對外服務的網(wǎng)絡。客戶端和應用都通過這個網(wǎng)絡來訪問。

RAC 后臺進程

Oracle RAC 有一些自己獨特的后臺進程,在單一實例中不發(fā)揮配置作用。如下圖所示,定義了一些 RAC 運行的后臺進程。這些后臺進程的功能描述如下。

Oracle的高可用集群方案有哪些

(1)LMS(Global cache service processes 全局緩存服務進程)進程主要用來管理集群內(nèi)數(shù)據(jù)塊的訪問,并在不同實例的 Buffer Cache 中傳輸數(shù)據(jù)塊鏡像。直接從控制的實例的緩存復制數(shù)據(jù)塊,然后發(fā)送一個副本到請求的實例上。并保證在所有實例的 Buffer Cache 中一個數(shù)據(jù)塊的鏡像只能出現(xiàn)一次。LMS 進程靠著在實例中傳遞消息來協(xié)調(diào)數(shù)據(jù)塊的訪問,當一個實例請求數(shù)據(jù)塊時,該實例的 LMD 進程發(fā)出一個數(shù)據(jù)塊資源的請求,該請求指向主數(shù)據(jù)塊的實例的 LMD 進程,主實例的 LMD 進程和正在使用的實例的 LMD 進程釋放該資源,這時擁有該資源的實例的 LMS 進程會創(chuàng)建一個數(shù)據(jù)塊鏡像的一致性讀然后把該數(shù)據(jù)塊傳遞到請求該資源的實例的BUFFER CACHE 中。LMS 進程保證了在每一時刻只能允許一個實例去更新數(shù)據(jù)塊,并負責保持該數(shù)據(jù)塊的鏡像記錄(包含更新數(shù)據(jù)塊的狀態(tài) FLAG)。RAC 提供了 10 個 LMS 進程(0~9),該進程數(shù)量隨著節(jié)點間的消息傳遞的數(shù)據(jù)的增加而增加。(2)LMON(Lock Monitor Process,鎖監(jiān)控進程)是全局隊列服務監(jiān)控器,各個實例的 LMON 進程會定期通信,以檢查集群中各個節(jié)點的健康狀況,當某個節(jié)點出現(xiàn)故障時,負責集群重構(gòu)、GRD 恢復等操作,它提供的服務叫做 Cluster Group Service(CGS)。

LMON 主要借助兩種心跳機制來完成健康檢查。

(一) 節(jié)點間的網(wǎng)絡心跳(Network Heartbeat):可以想象成節(jié)點間定時的發(fā)送 ping 包檢測節(jié)點狀態(tài),如果能在規(guī)定時間內(nèi)收到回應,就認為對方狀態(tài)正常。

(二) 通過控制文件的磁盤心跳(controlfile heartbeat):每個節(jié)點的 CKPT 進程每隔 3 秒鐘更新一次控制文件的數(shù)據(jù)塊,這個數(shù)據(jù)塊叫做 Checkpoint Progress Record,控制文件是共享的,所以實例間可以互相檢查對方是否及時更新來判斷。

(三) LMD(the global enqueue service daemon,鎖管理守護進程)是一個后臺進程,也被稱為全局的隊列服務守護進程,因為負責對資源的管理要求來控制訪問塊和全局隊列。在每一個實例的內(nèi)部,LMD 進程管理輸入的遠程資源請求(即來自集群中其他實例的鎖請求)。此外,它還負責死鎖檢查和監(jiān)控轉(zhuǎn)換超時。

(四) LCK(the lock process,鎖進程)管理非緩存融合,鎖請求是本地的資源請求。LCK 進程管理共享資源的實例的資源請求和跨實例調(diào)用操作。在恢復過程中它建立一個無效鎖元素的列表,并驗證鎖的元素。由于處理過程中的 LMS 鎖管理的首要職能,只有一個單一的 LCK 進程存在每個實例中。

(五) DIAG(the diagnosability daemon,診斷守護進程)負責捕獲 RAC 環(huán)境中進程失敗的相關(guān)信息。并將跟蹤信息寫出用于失敗分析,DIAG 產(chǎn)生的信息在與 Oracle Support 技術(shù)合作來尋找導致失敗的原因方面是非常有用的。每個實例僅需要一個 DIAG 進程。

(六) GSD(the global service daemon,全局服務進程)與 RAC 的管理工具 dbca、srvctl、oem 進行交互,用來完成實例的啟動關(guān)閉等管理事務。為了保證這些管理工具運行正常必須在所有的節(jié)點上先start gsd,并且一個 GSD 進程支持在一個節(jié)點的多個 rac.gsd 進程位ORACLEHOME/bin目錄下,其log文件為ORACLEHOME/bin目錄下,其log文件為ORACLE_HOME/srvm/log/gsdaemon.log。GCS 和 GES 兩個進程負責通過全局資源目錄(Global Resource Directory GRD)維護每個數(shù)據(jù)的文件和緩存塊的狀態(tài)信息。當某個實例訪問數(shù)據(jù)并緩存了數(shù)據(jù)之后,集群中的其他實例也會獲得一個對應的塊鏡像,這樣其他實例在訪問這些數(shù)據(jù)是就不需要再去讀盤了,而是直接讀取 SGA 中的緩存。GRD 存在于每個活動的 instance 的內(nèi)存結(jié)構(gòu)中,這個特點造成 RAC 環(huán)境的 SGA 相對于單實例數(shù)據(jù)庫系統(tǒng)的 SGA 要大。其他的進程和內(nèi)存結(jié)構(gòu)都跟單實例數(shù)據(jù)庫差別不大。

RAC 共享存儲

RAC 需要有共享存儲,獨立于實例之外的信息,如上面提到的ocr 和 votedisk 以及數(shù)據(jù)文件都存放在這個共享存儲里的。有OCFS、OCFS2、RAW、NFS、ASM 等這樣的一些存儲方式。OCFS(Oracle Cluster File System) 和 OCFS2 就是一個文件系統(tǒng)而已,和 NFS 一樣,提供一種集群環(huán)境中的共享存儲的文件系統(tǒng)。RAW 裸設備也是一種存儲方式,是 oracle11g 之前的版本中 RAC 支持的存儲方式,在 Oralce9i 之前,OPS/RAC的支持只能使用這樣的方式,也就是把共享存儲映射到 RAW Device,然后把 Oracle 需要的數(shù)據(jù)選擇 RAW device存儲,但是 RAW 相對于文件系統(tǒng)來說不直觀,不便于管理,而且 RAW Device 有數(shù)量的限制,RAW 顯然需要有新的方案來代替,這樣就有了 OCFS 這樣的文件系統(tǒng)。當然,這只是 Oracle 自己的實現(xiàn)的集文件系統(tǒng)而已,還有其他廠商提供的文件系統(tǒng)可以作為存儲的選擇方案。ASM 只是數(shù)據(jù)庫存儲的方案而已,并不是 cluster 的方案,所以這里 ASM 應該是區(qū)別于 RAW 和 OCFS/OCFS2同一級別的概念,RAW 和 OCFS/OCFS2 不僅可以作為數(shù)據(jù)庫存儲的方案,同時也可以作為 Clusterware 里的存儲方案,是 CRS 里需要的 storage,而 ASM 僅作為數(shù)據(jù)庫的存儲而已,嚴格來說僅是 RAC 中的一個節(jié)點應用(nodeapps)。ASM 對于 clusterware 安裝時需要的 ocr 和 votedisk 這兩項還不支持,畢竟 ASM 本身就需要一個實例,而 CRS 是完全在架構(gòu)之外的,這也就是為什么使用了 ASM 的方案,卻總還要加上 OCFS/OCFS2 和 RAW 其中的一個原因。各種 RAC 共享存儲方式的對比如下:

  1. 集群文件系統(tǒng)——支持 windows 和 Linux 的 OCFS/OCFS2

  2. AIX 下的 GPFS 等方式——優(yōu)點是管理方便,表示也很直觀,但缺點是基于文件系統(tǒng)管理軟件,又要經(jīng)過 OS 的 cache 處理,性能上和穩(wěn)定性上都有欠缺,所以不適合在生產(chǎn)環(huán)境下使用??梢灾С?CRS 集群軟件文件和數(shù)據(jù)庫文件。

  3. RAW 裸設備方式——通過硬件支持的共享存儲系統(tǒng),直接用 RAW 設備存儲,可以支持集群軟件文件和數(shù)據(jù)庫文件。

  4. 網(wǎng)絡文件系統(tǒng)(NFS)——通過 NFS 實現(xiàn)共享存儲,不過需要經(jīng)過 Oracle 認證的 NFS 才行,可以支持CRS 集群軟件文件和數(shù)據(jù)庫文件。

  5. ASM——集合 RAW 方式 I/O 高性能和集群文件系統(tǒng)易管理等優(yōu)點,Oracle10g 下推出的共享存儲方式,但是本身 ASM 就是需要 Oracle 的實例支持,所以 ASM 僅支持數(shù)據(jù)庫文件,而不支持 CRS 文件。

RAC 數(shù)據(jù)庫和單實例數(shù)據(jù)庫的區(qū)別

為了讓 RAC 中的所有實例能夠訪問數(shù)據(jù)庫,所有的 datafiles、control files、PFILE/Spfile 和 redo log files 必須保存在共享磁盤上,并且要都能被所有節(jié)點同時訪問,就涉及到裸設備和集群文件系統(tǒng)等。RAC database 在結(jié)構(gòu)上與單實例的不同之處:至少為每個實例多配置一個 redo 線程,比如:兩個實例組成的集群至少要 4 個 redo log group。每個實例兩個 redo group。另外要為每一個實例準備一個 UNDO 表空間。

1、redo 和 undo,每個實例在做數(shù)據(jù)庫的修改時誰用誰的 redo 和 undo 段,各自鎖定自己修改的數(shù)據(jù),把不同實例的操作相對的獨立開就避免了數(shù)據(jù)不一致。后面就要考慮備份或者恢復時 redo log 和歸檔日志在這種情況下的特殊考慮了。

2、內(nèi)存和進程各個節(jié)點的實例都有自己的內(nèi)存結(jié)構(gòu)和進程結(jié)構(gòu).各節(jié)點之間結(jié)構(gòu)是基本相同的.通過 Cache Fusion(緩存融合)技術(shù),RAC 在各個節(jié)點之間同步 SGA 中的緩存信息達到提高訪問速度的效果也保證了一致性。

到此,關(guān)于“Oracle的高可用集群方案有哪些”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
文章標題:Oracle的高可用集群方案有哪些
文章網(wǎng)址:http://fisionsoft.com.cn/article/ieojjj.html