什麼是 Amazon Relational Database Service (Amazon RDS)? - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

什麼是 Amazon Relational Database Service (Amazon RDS)?

Amazon Relational Database Service (Amazon RDS) 是一項 Web 服務,可以讓 AWS 雲端中關聯式資料庫的設定、操作和擴展更加簡單。其能為產業標準的關聯式資料庫提供具成本效益、可調整大小的容量,並管理常見的資料庫管理任務。

注意

本指南涵蓋 Amazon Aurora 以外的 Amazon RDS 資料庫引擎。如需使用 Amazon Aurora​ 的相關資訊,請參閱《Amazon Aurora​ 使用者指南》。

如果您不熟悉 AWS 產品和服務,請利用下列資源開始學習更多資訊:

Amazon RDS 概觀

為什麼要在 AWS 雲端中執行關聯式資料庫? 因為 AWS 接管關聯式資料庫的許多困難和繁瑣的管理工作。

Amazon EC2 和內部部署資料庫

Amazon Elastic Compute Cloud (Amazon EC2) – 在 AWS 雲端中提供可擴展的運算容量。Amazon EC2 可減少前期所需的硬體投資,讓您更快速開發並部署應用程式。

購買內部部署伺服器時,CPU、記憶體、儲存空間和 IOPS 都是一起搭售。使用 Amazon EC2,這些都是分開的個別元件,方便您日後可以獨立擴展。如果您需要更多 CPU、較少 IOPS 或更多儲存空間,都可以輕鬆配置。

對於內部部署伺服器中的關聯式資料庫,您必須承擔伺服器、作業系統和軟體的全部責任。對於 Amazon EC2 執行個體上的資料庫, AWS 會管理作業系統下方的層。透過這種方式,Amazon EC2 消除了管理內部部署資料庫伺服器的部分負擔。

在下表中,您可以找到內部部署資料庫與 Amazon EC2 的管理模型比較。

功能

內部部署管理

Amazon EC2 管理

應用程式最佳化

客戶

客戶

擴展

客戶

客戶

高可用性

客戶

客戶

資料庫備份

客戶

客戶

資料庫軟體修補

客戶

客戶

資料庫軟體安裝

客戶

客戶

作業系統 (OS) 修補

客戶

客戶

作業系統安裝

客戶

客戶

伺服器維護

客戶

AWS

硬體生命週期

客戶

AWS

電源、網路和冷卻

客戶

AWS

Amazon EC2 不是全受管服務。因此,當您在 Amazon EC2 上執行資料庫時,您更容易出現使用者錯誤。例如,當您手動更新作業系統或資料庫軟體時,可能會意外造成應用程式停機。您可能會花費數小時檢查每項變更,以識別並修正問題。

Amazon RDS 和 Amazon EC2

Amazon RDS 是受管資料庫服務。它負責大部分的管理任務。透過消除繁瑣的手動任務,Amazon RDS 讓您可以專注於應用程式和使用者。對於大多數資料庫部署,我們建議您透過 Amazon EC2 使用 Amazon RDS 做為預設選擇。

在下表中,您可以找到 Amazon EC2 與 Amazon RDS 的管理模型比較。

功能

Amazon EC2 管理

Amazon RDS 管理

應用程式最佳化

客戶

客戶

擴展

客戶

AWS

高可用性

客戶

AWS

資料庫備份

客戶

AWS

資料庫軟體修補

客戶

AWS

資料庫軟體安裝

客戶

AWS

作業系統修補

客戶

AWS

作業系統安裝

客戶

AWS

伺服器維護

AWS

AWS

硬體生命週期

AWS

AWS

電源、網路和冷卻

AWS

AWS

Amazon RDS 透過未全受管的資料庫部署,提供下列特定優點:

  • 您可以使用您已經熟悉的資料庫產品:Db2、MariaDB、Microsoft SQL 伺服器、MySQL、甲骨文和 PostgreSQL。

  • Amazon RDS 會管理備份、軟體修補、自動故障偵測與復原作業。

  • 您可以開啟自動備份,或手動建立您自己的備份快照。您可使用這些備份還原資料庫。Amazon RDS 的還原流程可靠又有效率。

  • 發生問題時,您有主要執行個體與同步次要執行個體可以容錯移轉,從而享有高可用性。您也可以使用僅供讀取複本提高讀取擴展性。

  • 除了您資料庫套件內含的安全機制外,您可以協助控制誰可以存取 RDS 資料庫。若要這麼做,您可以使用 AWS Identity and Access Management (IAM) 來定義使用者和許可。您也可以將資料庫置於 Virtual Private Cloud (VPC),協助保護資料庫安全。

Amazon RDS Custom for Oracle 和 Microsoft SQL Server

Amazon RDS Custom 是 RDS 管理類型,讓您完全存取資料庫和作業系統。

您可以使用 RDS Custom 的控制功能來存取和自訂舊版和封裝商務應用程式的資料庫環境和作業系統。同時,Amazon RDS 會自動化資料庫管理任務和操作。

在此部署模型中,您可以安裝應用程式並變更組態設定,以符合您的應用程式。同時,您可以卸載資料庫管理工作,例如佈建、擴展、升級和備份至 AWS。您可以利用 Amazon RDS 的資料庫管理優勢,並具有更大的控制和彈性。

對於 Oracle 資料庫和 Microsoft SQL Server,RDS Custom 結合 Amazon RDS 的自動化與 Amazon EC2 的彈性。如需 RDS Custom 的詳細資訊,請參閱 使用 Amazon RDS Custom

使用 RDS Custom 的共同的責任模型,您會獲得比在 Amazon RDS 中更多的控制權,也會承擔更多責任。如需詳細資訊,請參閱 RDS Custom 中共同的責任模型

Amazon RDS AWS Outposts

Amazon RDS 將適用於 SQL 伺服器的 RDS、適用於 MySQL 的 RDS 和適用於 PostgreSQL 資料庫的 RDS 資料庫 AWS Outposts 延伸到 AWS Outposts 環境中。 AWS Outposts 使用與公共場所相同的硬體, AWS 區域 將 AWS 服務、基礎架構和作業模型帶入內部部署。透過 Outposts 上的 RDS,您可以將受管資料庫執行個體佈建至接近必須在內部部署執行的商業應用程式之處。如需詳細資訊,請參閱 與 Amazon RDS 上的工作 AWS Outposts

資料庫執行個體

資料庫執行個體是在 AWS 雲端執行的隔離資料庫環境。Amazon RDS 的基本建置組塊為資料庫執行個體。

您的資料庫執行個體可以包含一或多個使用者建立的資料庫。您可以使用您搭配獨立資料庫執行個體使用的同一工具和應用程式來建立資料庫執行個體。您可以使用 AWS Command Line Interface (AWS CLI)、Amazon RDS API 或 AWS Management Console.

下圖顯示使用 Amazon RDS 進行資料庫儲存的動態網站的典型使用案例。 AWS 透過 Elastic Load Balancing 將要求轉送至應用程式伺服器,藉此路由使用者流量。這些應用程式伺服器與 RDS 資料庫執行個體互 應用程式伺服器和資料庫執行個體位於相同 Virtual Private Cloud (VPC) (VPC) 內的不同可用區域 (AZ) 中。主要資料庫執行個體會複寫到另一個資料庫執行個體,稱為僅供讀取複本。這兩個資料庫執行個體都位於 VPC 內的私有子網路中,這表示網際網路使用者無法直接存取它們。

資料庫引擎

資料庫引擎是在資料庫執行個體上執行的特定關聯式資料庫軟體。Amazon RDS 目前支援下列引擎:

  • Db2

  • MariaDB

  • Microsoft SQL Server

  • MySQL

  • Oracle

  • PostgreSQL

每個資料庫引擎都有各自支援的功能,資料庫引擎的各個版本可能會包含特定功能。對 Amazon RDS 功能的 Support 會因每個資料庫引擎的特定版本而有所不同。 AWS 區域 若要檢查不同引擎版本和區域的功能支援,請參閱 Amazon RDS 由 AWS 區域 和數據庫引擎支持的功能

此外,每個資料庫引擎的資料庫參數群組都具有參數集,可控制所管理之資料庫的行為。

資料庫執行個體類別

資料庫執行個體類別會決定資料庫執行個體的運算和記憶體容量。資料庫執行個體類別由資料庫執行個體類型和大小組成。每個執行個體類型皆提供不同的運算、記憶體與儲存功能。例如,db.m6g 是由重力 2 處理器提供支援的一般用途資料庫執行個體類型。 AWS 在 db.m6g 執行個體類型內,db.m6g.2xlarge 是資料庫執行個體類別。

您可以選擇最符合您需求的資料庫執行個體。若您的需求隨時間而有所改變,可變更資料庫執行個體。如需相關資訊,請參閱「 資料庫執行個體類別」。

注意

如需資料庫執行個體類別的定價資訊,請參閱 Amazon RDS 產品頁面的定價一節。

資料庫執行個體儲存體

Amazon EBS 提供可連接至執行中之執行個體的耐久區塊層級儲存體磁碟區。資料庫執行個體儲存有下列類型:

  • 一般用途 (SSD)

  • 佈建的 IOPS (PIOPS)

  • 磁帶

儲存類型在效能特性和價格方面有所不同。您可以量身打造儲存效能和成本以符合您的資料庫需求。

各資料庫執行個體會有最低與最高的儲存需求,需視儲存類型與支援的資料庫引擎而定。具有足夠儲存空間很重要,如此您的資料庫才有空間成長。此外,足夠的儲存空間可確保資料庫引擎的功能有空間寫入內容或日誌項目。如需詳細資訊,請參閱 Amazon RDS 資料庫執行個體儲存體

Amazon Virtual Private Cloud (Amazon VPC)

您可以使用 Amazon Virtual Private Cloud (Amazon VPC) 服務,在 Virtual Private Cloud (VPC) 上執行資料庫執行個體。使用 VPC 時,您可以掌控您的虛擬聯網環境。您可以選擇自己的 IP 地址範圍、建立子網路,以及設定路由和存取控制清單。無論是否在 VPC 中執行,Amazon RDS 都可提供相同的基本功能。Amazon RDS 會管理備份、軟體修補、自動故障偵測與復原作業。在 VPC 中執行資料庫執行個體無需額外成本。如需搭配 RDS 使用 Amazon VPC 的詳細資訊,請參閱Amazon VPC 和 Amazon RDS

Amazon RDS 使用網路時間協定 (NTP) 同步資料庫執行個體的時間。

AWS 區域和可用區域

Amazon 雲端運算資源存放於全球不同區域 (例如北美、歐洲或亞洲) 的高可用性資料中心設施。每個資料中心位置稱為「 AWS 區域」。

每個 AWS 區域都包含多個不同的位置,稱為可用區域或 AZ。每個可用區域旨在隔離其他可用區域的故障。每個都經過精心設計,可為相 AWS 同區域中的其他可用區域提供低成本、低延遲的網路連線能力。藉由在個別的可用區域中啟動執行個體,您就可以保護應用程式免於發生單點故障。如需更多詳細資訊,請參閱 區域、可用區域和 Local Zones

您可以在多個可用區域中執行資料庫執行個體,這種方法稱為「異地同步備份部署」。選擇這個選項後,Amazon 會自動佈建並維護一個或多個不同可用區域的次要待命資料庫執行個體。您的主要資料庫執行個體會跨可用區域複寫至每個次要資料庫執行個體。此方法協助提供資料備援與容錯移轉支援、消除輸入/輸出凍結,以及在系統備分期間將延遲峰值降至最低。在多可用區域資料庫叢集部署中,次要資料庫執行個體也可為讀取流量提供服務。如需詳細資訊,請參閱 設定及管理多可用區部署

安全

安全群組 可控制對資料庫執行個體的存取。方法是允許使用者存取您所指定的 IP 地址範圍或 Amazon EC2 執行個體,達到控管的目的。

如需安全群組的詳細資訊,請參閱Amazon RDS 中的安全

Amazon RDS 監控

追蹤資料庫執行個體的效能與運作狀態有多種方式。您可以使用 Amazon CloudWatch 服務監控資料庫執行個體的效能和運作狀態。CloudWatch 效能圖表會顯示在 Amazon RDS 主控台中。您也可以訂閱 Amazon RDS 事件,如此一來,只要資料庫執行個體、資料庫快照或資料庫參數群組有所變更,就能收到通知。如需詳細資訊,請參閱 監控 Amazon RDS 執行個體中的指標

如何使用 Amazon RDS

與 Amazon RDS 互動有多種方式。

AWS Management Console

AWS Management Console 這是一個簡單的基於 Web 的用戶界面。不需編寫程式,即可從主控台管理您的資料庫執行個體。若要存取 Amazon RDS 主控台,請登入 AWS Management Console ,開啟位於 https://console.aws.amazon.com/rds/ 的 Amazon RDS 主控台。

命令列界面

您可以使用 AWS Command Line Interface (AWS CLI) 以互動方式存取 Amazon RDS API。若要安裝 AWS CLI,請參閱安裝指 AWS 令行介面。若要開始使 AWS CLI 用 RDS,請AWS Command Line Interface 參閱 Amazon RDS 的參考資料

Amazon RDS API

如果您是開發人員,可以透過編寫程式使用 API 存取 Amazon RDS。如需詳細資訊,請參閱 Amazon RDS API 參考

對於應用程式開發,我們建議您使用其中一個 AWS 軟體開發套件 (SDK)。 AWS SDK 會處理低階詳細資料,例如驗證、重試邏輯和錯誤處理,以便您可以專注於應用程式邏輯。 AWS SDK 可用於各種語言。如需詳細資訊,請參閱 Amazon Web Services 適用工具

AWS 也提供程式庫、範例程式碼、教學課程和其他資源,協助您更輕鬆地開始使用。如需詳細資訊,請參閱範本程式碼與程式庫一文。

Amazon RDS 收費方式

當您使用 Amazon RDS 時,可以選擇使用隨需執行個體或預留的資料庫執行個體。如需更多詳細資訊,請參閱 Amazon RDS 的資料庫執行個體計費

如需 Amazon RDS 定價資訊,請參閱 Amazon RDS 產品頁面

後續步驟?

上一節為您介紹 RDS 提供的基本基礎設施元件。接下來該怎麼做?

入門

請使用Amazon RDS 入門中的指示,來建立資料庫執行個體。

資料庫引擎的特定主題

您可以在下列章節中檢閱特定資料庫引擎的專用資訊:

Amazon RDS 共同的責任模型

Amazon RDS 負責託管資料庫執行個體和資料庫叢集的軟體元件和基礎設施。您則負責查詢調校,這是調整 SQL 查詢以提高效能的程序。查詢效能大幅取決於資料庫設計、資料大小、資料分佈、應用程式工作負載和查詢模式,而這些模式可能差異很大。監控和調校是您針對 RDS 資料庫的高度個人化程序。您可以使用 Amazon RDS Performance Insights 和其他工具識別出有問題的查詢。