Amazon Aurora 建議參考 - Amazon Aurora

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

Amazon Aurora 建議參考

Amazon Aurora 會在資源建立或修改時,就資源產生建議。您可以在下表中找到 Amazon Aurora 建議的範例。

類型 描述 建議 需要停機時間 其他資訊

資源自動備份已關閉

您的資料庫執行個體不會開啟自動備份。建議自動備份,因為可啟用資料庫執行個體的時間點復原。

開啟保留期間最長為 14 天的自動備份。

備份與還原 Aurora 資料庫叢集的概觀

AWS 資料庫部落格上的揭密 Amazon RDS 備份儲存成本

需要引擎次要版本升級

您的資料庫資源未執行最新的次要資料庫引擎版本。最新的次要版本包含最新的安全性修正和其他改進。

升級至最新的引擎版本。

維持​ 為 Amazon Aurora​ 資料庫叢集

增強型監控已關閉

您的資料庫資源未開啟增強型監控。增強型監控針對監控及疑難排解,提供即時的作業系統指標。

開啟增強型監控。

使用增強型監控來監控作業系統指標

儲存加密已關閉

Amazon RDS 使用您在 AWS Key Management Service (AWS KMS) 中管理的金鑰,支援所有資料庫引擎的靜態加密。在具有 Amazon RDS 加密的作用中資料庫執行個體上,儲存體中存放的靜態資料會加密,類似於自動備份、僅供讀取複本和快照。

如果在建立 Aurora 資料庫叢集時未開啟加密,您必須將解密快照還原至加密的資料庫叢集。

為您的資料庫叢集開啟靜態資料加密。

Amazon Aurora 中的安全

具有所有執行個體的資料庫叢集都位於相同的可用區域。

資料庫叢集目前位於單一可用區域。使用多個可用區域來改善可用性。

將資料庫執行個體新增至資料庫叢集中的多個可用區域。

Amazon Aurora 的高可用性

叢集中具有異質執行個體大小的資料庫執行個體

建議您在您的資料庫叢集中,對所有資料庫執行個體皆使用相同的資料庫執行個體類別和大小。

在您的資料庫叢集中,對所有資料庫執行個體皆使用相同的資料庫執行個體類別和大小。

以 Amazon Aurora 進行複寫

叢集中具有異質執行個體類別的資料庫執行個體

建議您在您的資料庫叢集中,對所有資料庫執行個體皆使用相同的資料庫執行個體類別和大小。

在您的資料庫叢集中,對所有資料庫執行個體皆使用相同的資料庫執行個體類別和大小。

以 Amazon Aurora 進行複寫

叢集中具有異質參數群組的資料庫執行個體

建議資料庫叢集中的所有資料庫執行個體都使用相同的資料庫參數群組。

將資料庫執行個體與資料庫叢集中寫入器執行個體相關聯的資料庫參數群組建立關聯。

Amazon Aurora 的參數群組

Amazon RDS 資料庫叢集有一個資料庫執行個體

再新增至少一個資料庫執行個體到您的資料庫叢集,以改善可用性和效能。

新增讀取器資料庫執行個體到您的資料庫叢集。

Amazon Aurora 的高可用性

Performance Insights 已關閉

Performance Insights 會監控您的資料庫執行個體負載,協助您分析並解決資料庫效能問題。建議您開啟 Performance Insights。

開啟績效詳情。

在 Amazon Aurora 上使用績效詳情監控資料庫負載

需要 RDS 資源主要版本更新

不支援具有資料庫引擎目前主要版本的資料庫。建議您升級至包含新功能和增強功能的最新主要版本。

升級至資料庫引擎的最新主要版本。

Amazon Aurora 更新

在 Amazon Aurora 中建立藍/綠部署

資料庫叢集磁碟區大小上限

較新的引擎版本可為您的資料庫叢集支援較大的儲存磁碟區。

建議您將資料庫叢集的引擎版本升級至最新版本,以受益於增加的儲存容量。

Amazon Aurora 大小限制

具有所有讀取器執行個體的資料庫叢集都位於相同的可用區域

在每個 AWS 區域內,可用區域 (AZ) 是彼此不同的位置,以便在中斷時提供隔離。建議您將資料庫叢集中的主要執行個體和讀取器執行個體分配到多個可用區域中,以提升資料庫叢集的可用性。您可以在建立叢集時使用 AWS 管理主控台、 AWS CLI 或 Amazon RDS API 來建立多可用區域叢集。您可以透過新增讀取器執行個體並指定不同的可用區域,將現有 Aurora 叢集修改為多可用區叢集。

在您的資料庫叢集之中,所有讀取執行個體都位於相同的可用區域。建議您將讀取器執行個體分散至多個可用區域。如此能增加可用性,並減少用戶端和資料庫之間的網路延遲,進而縮短回應時間。

Amazon Aurora 的高可用性

資料庫記憶體參數與預設值不同

資料庫執行個體的記憶體參數與預設值明顯不同。這些設定可能會影響效能並導致錯誤。

建議您在資料庫參數群組中,將資料庫執行個體的自訂記憶體參數重設為其預設值。

將記憶體參數重設為其預設值。

Amazon Aurora 的參數群組

查詢快取參數已開啟

當變更需要清除查詢快取時,您的資料庫執行個體會顯示為停滯。大部分工作負載並不會受益於查詢快取。MySQL 8.0 版和更新版本已移除查詢快取。建議您將 query_cache_type 參數設定為 0。

將您資料庫參數群組中的 query_cache_type 參數值設定為 0

Amazon Aurora 的參數群組

log_output 參數設定為資料表

log_output 設定為 TABLE 時,使用的儲存體會比 log_output 設定為 FILE 時多。建議您將參數設定為 FILE,以避免達到儲存體大小限制。在 MySQL 8.4 和更新版本中,預設設定為 FILE

將您資料庫參數群組中的 log_output 參數值設定為 FILE

Aurora MySQL 資料庫日誌檔案

autovacuum 參數已關閉

資料庫叢集的自動清空參數已關閉。關閉自動清空功能會增加資料表和索引膨脹並影響效能。

建議您在資料庫參數群組中開啟自動清空。

在您的資料庫叢集參數群組中開啟自動清空參數。

在 AWS 資料庫部落格上了解 Amazon RDS for PostgreSQL 環境中的自動清空

synchronous_commit 參數已關閉

synchronous_commit 參數關閉時,資料可能會在資料庫當機時遺失。資料庫的耐久性存在風險。

建議您開啟 synchronous_commit 參數。

在您的資料庫參數群組中開啟 synchronous_commit 參數。

資料庫 AWS 部落格上的 Amazon Aurora PostgreSQL 參數:複寫、安全性和記錄

track_counts 參數已關閉

track_counts 參數關閉時,資料庫就不會收集資料庫活動統計資料。自動清空功能需要這些統計資料才能正常運作。

建議您將 track_counts 參數設定為 1

track_counts 參數設定為 1

PostgreSQL 的執行階段統計資料

enable_indexonlyscan 參數已關閉

僅索引掃描計畫類型關閉時,查詢規劃器或最佳化工具皆無法使用該功能。

建議您將 enable_indexonlyscan 參數值設定為 1

enable_indexonlyscan 參數值設定為 1

PostgreSQL 的規劃器方法組態

enable_indexscan 參數已關閉

索引掃描計畫類型關閉時,查詢規劃器或最佳化工具皆無法使用該功能。

建議您將 enable_indexscan 值設定為 1

enable_indexscan 參數值設定為 1

PostgreSQL 的規劃器方法組態

innodb_flush_log_at_trx 參數已關閉

資料庫執行個體的 innodb_flush_log_at_trx 參數值不是安全的值。此參數控制提交操作至磁碟的持續性。

建議您將 innodb_flush_log_at_trx 參數設定為 1

innodb_flush_log_at_trx 參數值設定為 1

設定日誌緩衝區的排清頻率

innodb_stats_persistent 參數已關閉

您的資料庫執行個體未設定將 InnoDB 統計資料保留於磁碟。未儲存統計資料時,會在每次執行個體重新啟動和存取資料表時重新計算統計資料。這會導致查詢執行計畫的變化。您可以在資料表層級修改此全域參數的值。

建議您將 innodb_stats_persistent 參數值設定為 ON

innodb_stats_persistent 參數值設定為 ON

Amazon Aurora 的參數群組

innodb_open_files 參數過低

innodb_open_files 參數控制 InnoDB 一次可以開啟的檔案數量。InnoDB 會在 mysqld 執行時,開啟所有日誌和系統資料表空間檔案。

針對 InnoDB 一次能開啟的最大檔案數量,您的資料庫執行個體設定值很低。建議您將 innodb_open_files 參數設定為 65 的下限。

innodb_open_files 參數設定為最小值 65

InnoDB 開啟 MySQL 的檔案

max_user_connections 參數過低

針對每個資料庫帳戶能同時連線的數量上限,您的資料庫執行個體設定值很低。

建議您將 max_user_connections 參數設定為大於 5 的數字。

max_user_connections 參數的值增加到大於 5 的數字。

設定 MySQL 的帳戶資源限制

僅供讀取複本以可寫入模式開啟

您的資料庫執行個體具有可寫入模式的僅供讀取複本,允許從用戶端進行更新。

建議您將 read_only 參數設定為 TrueIfReplica,讓僅供讀取複本不處於可寫入模式。

read_only 參數值設定為 TrueIfReplica

Amazon Aurora 的參數群組

innodb_default_row_format 參數設定不安全

您的資料庫執行個體遇到已知問題:在低於 8.0.26 的 MySQL 版本中建立的資料表,且當索引超過 767 個位元組時,將 row_format 設定為 COMPACTREDUNDANT 將無法存取且無法復原。

建議您將 innodb_default_row_format 參數值設定為 DYNAMIC

innodb_default_row_format 參數值設定為 DYNAMIC

MySQL 8.0.26 的變更

general_logging 參數已開啟

您的資料庫執行個體已開啟一般記錄功能。此設定在針對資料庫問題進行疑難排解時非常有用。不過,開啟一般記錄功能會增加 I/O 操作和配置儲存空間量,進而導致爭用和效能降低。

檢查您的要求是否有一般記錄用量。建議您將 general_logging 參數值設定為 0

檢查您的要求是否有一般記錄用量。如果不是強制性的,建議您將 general_logging 參數值設定為 0

Aurora MySQL 資料庫日誌概觀

資料庫叢集的讀取工作負載佈建不足

建議您將讀取器資料庫執行個體新增至資料庫叢集,其執行個體類別和大小與叢集中的寫入器資料庫執行個體相同。目前的組態有一個資料庫執行個體,資料庫負載持續偏高,主要是由讀取操作造成。將另一個資料庫執行個體新增至叢集,並將讀取工作負載導向資料庫叢集唯讀端點,以分配這些操作。

新增讀取器資料庫執行個體到叢集中。

將 Aurora 複本新增至資料庫叢集

管理 Aurora 資料庫叢集的效能和擴展

Amazon RDS 定價

RDS 執行個體的系統記憶體容量佈建不足

建議您調整查詢以使用較少的記憶體,或使用配置較高記憶體的資料庫執行個體類型。當執行個體記憶體不足時,資料庫效能會受到影響。

使用具有較高記憶體容量的資料庫執行個體

在 AWS 資料庫部落格上以垂直和水平方式擴展您的 Amazon RDS 執行個體

Amazon RDS 執行個體類型

Amazon RDS 定價

RDS 執行個體的系統 CPU 容量佈建不足

建議您調整查詢以使用較少的 CPU,或修改資料庫執行個體以使用配置較高 vCPU 的資料庫執行個體類別。當資料庫執行個體上執行的 CPU 偏低時,資料庫效能可能會降低。

使用具有較高 CPU 容量的資料庫執行個體

在 AWS 資料庫部落格上以垂直和水平方式擴展您的 Amazon RDS 執行個體

Amazon RDS 執行個體類型

Amazon RDS 定價

RDS 資源未正確使用連線集區

建議您啟用 Amazon RDS Proxy,以有效率地將現有資料庫連線集合起來並共用。如果您已經為資料庫使用代理,請正確設定它,以改善跨多個資料庫執行個體的連線集區和負載平衡。RDS Proxy 可協助降低連線耗盡和停機的風險,同時改善可用性和可擴展性。

啟用 RDS Proxy 或修改現有的 Proxy 組態

在 AWS 資料庫部落格上以垂直和水平方式擴展您的 Amazon RDS 執行個體

Amazon RDS Proxy for Aurora

Amazon RDS Proxy 定價