規劃資料庫的高可用性

Oracle Cloud Infrastructure Database 服務可讓您快速啟動 Oracle Database System (DB System),並在上面建立一或多個資料庫。資料庫服務支援數種類型的資料庫系統,範圍涵蓋大小、價格及效能。

若要規劃資料庫的高可用性,您應該考慮的主要設計策略包括:
  • 使用這些金鑰工具:Exadata 資料庫系統、雙節點 RAC 資料庫系統及 Data Guard。
  • 將您的 CPU 與儲存層設定為自動調整規模。
本文將說明這些策略。

使用 Exadata 資料庫系統

Exadata 資料庫系統可讓您在 Oracle Cloud Infrastructure 內充分運用 Exadata 的強大功能。

Exadata 資料庫系統由四分之一機架、半機架或全機架的運算節點和儲存伺服器所組成,這些節點和儲存伺服器透過高速、低延遲的 InfiniBand 網路和智慧型 Exadata 軟體連結在一起。您可以設定自動備份、針對不同工作負載進行最佳化,然後擴大系統以滿足增加的需求。

Exadata 資料庫系統提供內建的高可用性功能。您企業內部部署 Exadata 資料庫系統適用的所有現有最佳做法。

使用雙節點 RAC 資料庫系統

Oracle Cloud Infrastructure 在虛擬機器運算執行處理上提供雙節點 RAC 資料庫系統。雙節點 RAC 資料庫系統提供內建的高可用性功能,因此建議您為需要高可用性的解決方案使用雙節點 RAC 資料庫系統。

您可以將資料庫服務設定為自動備份至 Oracle Cloud Infrastructure Object Storage 。下圖顯示部署雙節點 RAC 資料庫系統,以支援三層式 Web 應用程式的高可用性:

rac-db.png 的描述如下
rac-db.png 圖解描述

注意:

此架構顯示多個可用性網域 (AD)。針對具有單一 AD 的區域,請調整架構以將資源分散到 AD 中的容錯域。

使用資料保全

針對具有單一節點資料庫系統的解決方案,請使用 Oracle Data Guard 實現高可用性。「資料保全」可確保企業資料的高可用性、資料保護和災害復原。

在 Oracle Cloud Infrastructure Database 服務中導入 Data Guard 需要兩個資料庫,一個位於主要角色,一個位於待命角色。這兩個資料庫構成一個 Data Guard 關聯。大部分應用程式會存取主要資料庫。待命資料庫是與主要資料庫在交易方面一致的複本。為了改善可用性和災害復原,建議將待命資料庫的資料庫系統放在與主要資料庫之資料庫系統不同的可用性網域中。Oracle Cloud Infrastructure 可用性網域之間的高效能網路可進行此部署。

db-dg.png 的描述如下
db-dg.png 圖解描述

注意:

此架構顯示多個可用性網域 (AD)。針對具有單一 AD 的區域,請調整架構以將資源分散到 AD 中的容錯域。

「資料保全」透過從主要資料庫傳輸和套用重做資料,來維護待命資料庫。如果主要資料庫變成無法使用,您可以使用 Data Guard 將待命資料庫切換為主要角色。

您可以使用 Data Guard 組態執行下列動作以支援高可用性:
  • 切換:撤銷主要和待命資料庫角色。每個資料庫都會以新角色持續參與 Data Guard 關聯。切換可確保不會遺失資料。在主要資料庫上執行計畫性維護之前,您可以使用切換。
  • 容錯移轉:在現有的主要資料庫失敗或變成無法連線之後,將待命資料庫轉換成主要角色。當您使用「最大效能」保護模式時,容錯移轉可能會導致部分資料遺失。
  • 復原:將資料庫恢復成「資料保全」關聯中的待命角色。更正失敗的原因之後,您可以使用 reinstate 命令將失敗的資料庫傳回服務。

自動調整 CPU 和儲存體

若要為解決方案提供高可用性,您必須確保資料庫系統具有足夠的容量。Oracle Cloud Infrastructure 上的資料庫服務可根據資料庫服務的不同型態,動態調整 CPU 核心或資料庫儲存體。

針對以裸機運算執行處理為基礎的資料庫系統,建議您從最小的 CPU 核心開始,並視需要動態增加 CPU 核心數目。針對以虛擬機器資源配置為基礎的資料庫系統,您可以動態增加 CPU 核心和儲存大小。