Amazon RDS 參考的建議 - Amazon Relational Database Service

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

Amazon RDS 參考的建議

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

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

磁性磁碟區正在使用中

您的資料庫執行個體正在使用磁性儲存體。大多數資料庫執行個體不建議使用磁性儲存。選擇不同的儲存類型:一般用途 (SSD) 或佈建 IOPS。

選擇不同的儲存類型:一般用途 (SSD) 或佈建 IOPS。

Amazon EC2 文件中的上一代磁碟區

資源自動化備份已關閉

資料庫執行個體不會開啟自動備份。建議使用自動備份,因為它們可 point-in-time復原資料庫執行個體。

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

啟用自動備份

在 AWS 資料庫部落格上說明 Amazon RDS 備份儲存成本

需要引擎次要版本升級

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

升級至最新的引擎版本。

升級資料庫執行個體引擎版本

增強型監控已關閉

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

開啟增強型監控。

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

儲存加密已關閉

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

如果在建立資料庫執行個體時未開啟加密,則您必須先建立和還原資料庫執行個體解密快照的加密副本,再開啟加密。

為您的資料庫執行個體開啟靜態資料加密。

Amazon RDS 中的安全

複製 Amazon 的資料庫快照 RDS

績效詳情已關閉

Performance Insights 會監控資料庫執行個體負載,以協助您分析和解決資料庫效能問題。我們建議您開啟績效詳情。

開啟績效詳情。

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

資料庫執行個體的儲存體自動調整規模已關閉

資料庫執行個體的儲存體自動擴展不會開啟。當資料庫工作負載增加時,RDS儲存體自動擴展會在零停機時間的情況下自動擴展儲存容量。

使用指定的最大RDS儲存閾值開啟 Amazon 儲存體自動擴展

使用 Amazon RDS 儲存體自動擴展自動管理容量

RDS 資源主要版本需要更新

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

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

升級資料庫執行個體引擎版本

使用 Amazon RDS 藍/綠部署進行資料庫更新

RDS 資源執行個體類別更新為必要項目

您的資料庫執行個體正在執行更新一代的資料庫執行個體類別。我們已將上一代的資料庫執行個體類別取代為具有更佳成本、效能或兩者的資料庫執行個體類別。我們建議您使用較新一代的資料庫執行個體類別來執行資料庫執行個體。

升級資料庫執行個體類別。

資料庫執行個體類別的支援資料庫引擎

RDS 使用包含授權下終止支援引擎版本的 資源

我們建議您將主要版本升級至 Amazon 支援的最新引擎版本RDS,以繼續目前的授權支援。目前授權不支援資料庫的引擎版本。

我們建議您將資料庫升級至 Amazon 中支援的最新版本RDS,以繼續使用授權模型。

Oracle 主要版本升級

未使用異地同步備份部署的資料庫執行個體

建議您使用多可用區部署。多可用區部署可增強資料庫執行個體的可用性和耐久性。

為受影響的資料庫執行個體設定異地同步備份

進行此變更時,不會發生停機。但是,可能會對效能產生影響。如需詳細資訊,請參閱 將資料庫執行個體轉換為 Amazon 的多可用區部署 RDS

Amazon RDS Multi-AZ 定價

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

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

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

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

資料庫 AWS 部落格上設定 Amazon RDS for My 效能參數的最佳實務SQL

InnoDB_Change_Buffering 使用低於最佳值的 參數

變更緩衝允許 MySQL 資料庫執行個體延遲一些寫入,這是維護次要索引的必要條件。此功能在磁碟緩慢的環境中很有用。變更緩衝組態稍微改善了資料庫效能,但在升級期間導致當機復原和長時間關閉時間延遲。在我的SQL 8.4 版中OFF,預設為 。

將資料庫InnoDB_Change_Buffering參數群組NONE中的參數值設為 。

資料庫 AWS 部落格上設定 Amazon RDS for My 效能參數的最佳實務SQL

查詢快取參數已開啟

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

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

資料庫 AWS 部落格上設定 Amazon RDS for My 效能參數的最佳實務SQL

log_output 參數設定為資料表

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

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

MySQL 資料庫日誌檔案

參數群組未使用大型頁面

大型頁面可以提高資料庫可擴展性,但您的資料庫執行個體不使用大型頁面。建議您在資料庫執行個體的資料庫參數群組ONLY中,將 use_large_pages 參數值設定為 。

將資料庫use_large_pages參數群組ONLY中的參數值設定為 。

對 RDS for Oracle 執行個體開啟巨型分頁

autovacuum 參數已關閉

資料庫執行個體資料庫的自動清空參數已關閉。關閉自動清空會增加資料表和索引膨脹,並影響效能。

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

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

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

synchronous_commit 參數已關閉

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

建議您開啟 synchronous_commit 參數。

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

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

track_counts 參數已關閉

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

建議您將 track_counts 參數設定為 1

track_counts 參數設定為 1

Postgre 的執行期統計資料SQL

enable_indexonlyscan 參數已關閉

查詢規劃器或最佳化工具在關閉時無法使用僅索引掃描計劃類型。

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

enable_indexonlyscan 參數值設定為 1

Postgre 的規劃工具方法組態SQL

enable_indexscan 參數已關閉

查詢規劃器或最佳化工具在關閉時無法使用索引掃描計劃類型。

我們建議您將 enable_indexscan值設定為 1

enable_indexscan 參數值設定為 1

Postgre 的規劃工具方法組態SQL

innodb_flush_log_at_trx 參數已關閉

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

建議您將 innodb_flush_log_at_trx 參數設定為 1

innodb_flush_log_at_trx 參數值設定為 1

資料庫 AWS 部落格上設定 Amazon RDS for My 效能參數的最佳實務SQL

sync_binlog 參數已關閉

在資料庫執行個體中確認交易遞交之前,不會強制執行二進位日誌與磁碟的同步。

我們建議您將 sync_binlog 參數值設定為 1

sync_binlog 參數值設定為 1

AWS 資料庫部落格上設定 Amazon RDS for My 複寫參數的最佳實務SQL

innodb_stats_persistent 參數已關閉

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

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

innodb_stats_persistent 參數值設定為 ON

資料庫 AWS 部落格上設定 Amazon RDS for My 效能參數的最佳實務SQL

innodb_open_files 參數過低

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

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

innodb_open_files 參數設定為最小值 65

適用於 My 的 InnoDB 開啟檔案SQL

max_user_connections 參數低

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

我們建議將 max_user_connections 參數設定為大於 的數字5

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

設定 My 的帳戶資源限制SQL

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

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

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

read_only 參數值設定為 TrueIfReplica

AWS 資料庫部落格上設定 Amazon RDS for My 複寫參數的最佳實務SQL

innodb_default_row_format 參數設定不安全

您的資料庫執行個體遇到已知問題:在 MySQL 版本中建立的資料表低於 8.0.26,當索引超過 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

RDS for MySQL 資料庫日誌概觀

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

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

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

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

Amazon RDS執行個體類型

Amazon RDS定價

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

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

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

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

Amazon RDS執行個體類型

Amazon RDS定價

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

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

啟用RDS代理或修改現有的代理組態

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

Amazon RDS Proxy

Amazon RDS Proxy 定價

RDS 執行個體正在建立過多的暫時物件

我們建議您調整工作負載,以防止建立過多的臨時物件,或切換到支援最佳化讀取的RDS執行個體類別。 RDSOptimized Reads 可改善涉及大量臨時物件和/或大型臨時物件之工作負載的資料庫效能。評估工作負載,以判斷使用具有 RDS Optimized Reads 的執行個體是否有利於您的資料庫工作負載。

搭配RDS最佳化讀取使用資料庫執行個體類型

Amazon RDS執行個體類型

改善 RDS MySQL with Amazon RDS Optimized Reads 的查詢效能

使用 Amazon RDS Optimized Reads 改善RDS適用於 MariaDB 的查詢效能

使用 Amazon RDS Optimized Reads 改善 RDS PostgreSQL 的查詢效能

RDS 執行個體未針對系統IOPS容量佈建

我們建議調校資料庫工作負載,將資料庫執行個體縮減IOPS或擴展至具有較高預設IOPS限制的類型。目前的資料庫執行個體不支援佈建的 IOPS,或資料庫工作負載具有高IOPS使用率。

使用具有較高預設IOPS限制的資料庫執行個體類型

Amazon RDS執行個體類型

Amazon RDS 資料庫執行個體儲存體

資料庫載入

RDS 執行個體有佈建不足的 Amazon EBS磁碟區

我們建議調校資料庫工作負載,以減少IOPS或增加IOPS為資料庫佈建。當IOPS使用率接近佈建 時IOPS,資料庫效能可能會降低。

IOPS 為資料庫執行個體佈建更多

Amazon RDS執行個體類型

Amazon RDS 資料庫執行個體儲存體

資料庫載入

RDS 執行個體的輸送量容量佈建不足

我們建議調校資料庫工作負載,以減少輸送量或增加資料庫的佈建輸送量。當輸送量使用率接近佈建的輸送量時,資料庫效能可能會受到影響。

為資料庫執行個體佈建更多輸送量

Amazon RDS執行個體類型

Amazon RDS 資料庫執行個體儲存體

資料庫載入

RDS 執行個體未針對 EBS I/O 佈建

我們建議調校資料庫工作負載,以減少 I/O 操作或修改資料庫執行個體,以使用專為需要高效能、高輸送量和低延遲的資料庫工作負載所設計的 Amazon RDS io2 Block Express 磁碟區。對於目前的工作負載,資料庫可能無法以所需的速率處理 I/O 操作,這可能會導致效能降低。

使用RDS執行個體的 Amazon RDS io2 Block Express 磁碟區

Amazon RDS 資料庫執行個體儲存體

Amazon CloudWatch 的 Amazon 指標 RDS

Amazon EBS使用者指南中的佈建磁碟IOPSSSD區