本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
您可以在下面找到 Amazon RDS 的資源配額和命名限制的說明。
Amazon RDS 中的配額
每個 AWS 帳戶在每個 AWS 區域中都有可建立的 Amazon RDS 資源數量配額。在達到資源的配額後,建立該資源的額外呼叫便會失敗並發生例外狀況。
下表列出每個 AWS 區域的資源及其配額。
名稱 | 預設 | 可調整 | 描述 |
---|---|---|---|
每個資料庫安全群組的授權 | 每個受支援的區域:20 | 否 | 每個資料庫安全群組的安全群組授權數 |
每個資料庫叢集的自訂端點 | 每個受支援的區域:5 | 否 | 您可以在目前區域中,在此帳戶中為每個 Aurora 資料庫叢集建立的自訂端點數量上限。此值反映帳戶中資料庫叢集中自訂端點的數量上限。帳戶中的其他資料庫叢集可能會有較少的自訂端點。 |
自訂引擎版本 | 每個受支援的區域:40 | 是 |
在目前區域中,此帳戶所允許的自訂引擎版本數量上限 |
資料庫叢集參數群組 | 每個受支援的區域:50 | 是 |
資料庫叢集參數群組的數量上限 |
資料庫叢集 | 每個受支援的區域:40 | 是 |
在目前區域中,此帳戶允許地的 Aurora 叢集數量上限 |
資料庫執行個體 |
ap-south-1:20 每個其他支援的 區域:40 |
是 |
在目前區域中,此帳戶允許地的資料庫執行個體數量上限 |
資料庫碎片群組 | 每個受支援的區域:5 | 是 |
目前區域中此帳戶中 Aurora 無限制資料庫的資料庫碎片群組數目上限 |
資料庫子網路群組 |
ap-south-1:20 每個其他支援的 區域:50 |
是 |
資料庫子網路群組的數量上限 |
資料 API HTTP 要求主體大小 | 每個受支援的區域:4 MB | 否 | HTTP 請求內文允許的大小上限。 |
資料 API 並行叢集密碼配對上限 | 每個受支援的區域:30 | 否 | 目前 AWS 區域中此帳戶並行資料 API 請求中 Aurora Serverless v1 資料庫叢集和秘密的唯一對數上限。 |
資料 API 並行請求上限 | 每個受支援的區域:500 | 否 | 對使用相同秘密且可同時處理的 Aurora Serverless v1 資料庫叢集提出的資料 API 請求數目上限。其他請求會排入佇列,並在同處理序請求完成時進行處理。 |
資料 API 結果集大小上限 | 每個受支援的區域:1 MB | 否 | 資料 API 可傳回的資料庫結果集大小上限。 |
JSON 回應字串的資料 API 大小上限 | 每個受支援的區域:10 MB | 否 | RDS 資料 API 傳回的簡化 JSON 回應字串大小上限。 |
每秒的資料 API 請求數 | 每個受支援的區域:每秒 1,000 | 否 | 目前 AWS 區域中此帳戶每秒允許對資料 API 的請求數目上限 |
事件訂閱 | 每個受支援的區域:20 | 是 |
事件訂閱的數量上限 |
每個資料庫叢集的 IAM 角色 | 每個受支援的區域:5 | 是 |
與資料庫叢集相關聯之 IAM 角色的數量上限 |
每個資料庫執行個體的 IAM 角色 | 每個受支援的區域:5 | 是 |
與資料庫執行個體相關聯的 IAM 角色數量上限 |
整合 | 每個受支援的區域:100 | 否 | 目前 AWS 區域中此帳戶中允許的整合數量上限 |
手動資料庫叢集快照 | 每個受支援的區域:100 | 是 |
手動資料庫叢集快照的數量上限 |
資料庫執行個體手動快照 | 每個受支援的區域:100 | 是 |
手動資料庫執行個體快照的數量上限 |
選項群組 | 每個受支援的區域:20 | 是 |
選項群組的數量上限 |
參數群組 |
ap-south-1:20 每個其他支援的 區域:50 |
是 |
參數群組的數量上限 |
代理 | 每個受支援的區域:20 | 是 |
目前 AWS 區域中此帳戶中允許的代理數目上限 |
每個主要項目的僅供讀取複本 | 每個受支援的區域:15 | 是 |
每個主資料庫執行個體的僅供讀取複本數量上限 此配額無法針對 Amazon Aurora 調整。 |
預留資料庫執行個體 | 每個受支援的區域:40 | 是 |
目前 AWS 區域中此帳戶中允許的預留資料庫執行個體數目上限 |
安全群組 |
ap-south-1:20 每個其他支援的 區域:25 |
是 |
資料庫安全群組數量上限 |
每個資料庫子網路群組的子網路 | 每個受支援的區域:20 | 否 | 每個資料庫子網路群組的子網路數目上限 |
所有資料庫執行個體的儲存總量 | 所有受支援的區域:100,000 GB | 是 |
EBS 磁碟區上所有 Amazon RDS 資料庫執行個體加在一起的儲存體總量上限 (以 GB 為單位) 此配額不適用於 Amazon Aurora,每個資料庫叢集的最大叢集磁碟區為 128 TiB。 |
注意
根據預設,您最多可以擁有 40 個資料庫執行個體。RDS 資料庫執行個體、Aurora 資料庫執行個體、Amazon Neptune 執行個體和 Amazon DocumentDB 執行個體皆適用此配額。
下列限制適用於 Amazon RDS 資料庫執行個體:
-
每個 SQL Server 資料庫版本 (Enterprise、Standard、Web 和 Express) 最多有 10 個「已包含授權」模式的執行個體
-
"license-included" 模式下的 10 for Oracle
-
40 for Db2,根據「bring-your-own-license」(BYOL) 授權模式
-
40 個資料庫執行個體可以是 MySQL、MariaDB 或 PostgreSQL
-
40 個資料庫執行個體可以是「使用自有授權」(BYOL) 模式的 Oracle
如果您的應用程式需要更多資料庫執行個體,您可以透過開啟 Service Quotas 主控台
對於 RDS for Oracle,您可以在每個區域中為每個來源資料庫執行個體建立最多 15 個僅供讀取複本,但我們建議將複本限制為 5,以將複寫延遲降至最低。
管理的備份 AWS Backup 會被視為手動資料庫快照,但不計入手動快照配額。如需詳細資訊 AWS Backup,請參閱 AWS Backup 開發人員指南。
如果您使用任何 RDS API 操作,且超過每秒呼叫次數的預設配額,Amazon RDS API 會發出類似下面的錯誤。
ClientError:呼叫
API_name
操作時發生錯誤 (ThrottlingException):超過速率。
在這裡,減少每秒呼叫次數。配額旨在涵蓋大多數使用案例。如果需要更高的配額,您可以使用下列其中一個選項來請求提高配額:
-
從主控台開啟 Service Quotas 主控台
。 -
從 AWS CLI,使用 request-service-quota-increase AWS CLI 命令。
如需詳細資訊,請參閱「Service Quotas 使用者指南」。
Amazon RDS 中的命名限制
Amazon RDS 中的命名限制如下:
-
資料庫執行個體識別符:
-
必須包含 1–63 個英數字元或連字號。
-
第一個字元必須是字母。
-
不能以一個連字號結尾或是連續包含兩個連字號。
-
每個 AWS 區域每個 AWS 帳戶的所有資料庫執行個體必須是唯一的。
-
-
初始資料庫名稱:
-
每個資料庫引擎都有不同的資料庫名稱限制。如需詳細資訊,請參閱建立每個資料庫執行個體時的可用設定。
-
SQL Server – 在建立資料庫執行個體之後建立資料庫。
-
-
主使用者名稱 – 每個資料庫引擎的主使用者名稱限制條件不同。如需詳細資訊,請參閱建立資料庫執行個體時的可用設定。
-
主密碼:
-
資料庫主要使用者密碼可包含任何可印刷的 ASCII 字元,但
/
、'
、"
、@
或空格除外。對於 Oracle,
&
是額外的字元限制。 -
密碼可以包含以下數量的可列印 ASCII 字元,具體取決於資料庫引擎:
-
Db2:8–255
-
MariaDB 及 MySQL:8–41
-
Oracle:8–30
-
SQL Server 及 PostgreSQL:8–128
-
-
-
資料庫參數群組:
-
必須包含 1–255 個英數字元。
-
第一個字元必須是字母。
-
允許連字號,但名稱不得以連字號為結尾或包含兩個連續的連字號。
-
-
資料庫子網路群組:
-
必須包含 1–255 個字元。
-
允許英數字母、空格、連字號、底線和句點。
-
資料庫連線數上限
同時資料庫連線的最大數量取決於資料庫引擎類型和資料庫執行個體類別的記憶體配置。連線數目上限通常會在與資料庫執行個體相關聯的參數群組中設定。例外狀況是 Microsoft SQL Server,它是在 SQL Server Management Studio (SSMS) 中資料庫執行個體的伺服器屬性中設定。
資料庫連線會耗用記憶體。如果其中一個參數的設定值過高,則可能會導致記憶體不足的情況出現,進而導致資料庫執行個體處於 incompatible-parameters (不相容參數) 狀態。如需詳細資訊,請參閱診斷和解決記憶體限制的不相容參數狀態。
如果您的應用程式經常開啟和關閉連線,或者保持大量長期連線開啟,我們建議您使用 Amazon RDS Proxy。RDS 代理是個完全受管、高可用性的資料庫代理,其使用連線集區,安全且高效地共用資料庫連線。如要進一步了解 RDS 代理,請參閱 Amazon RDS Proxy。
注意
對於 Oracle,您可以設定使用者程序,以及使用者與系統工作階段的數量上限。
對於 Db2,您無法設定最大連線數。限制為 64000。
下表顯示不同資料庫引擎的資料庫連線上限的相關資訊。
資料庫引擎 | 參數 | 允許的值 | 預設值 | 描述 |
---|---|---|---|---|
MariaDB | max_connections |
1–100000 |
|
允許的同時用戶端連線數目 |
MySQL | max_connections |
1–100000 |
{DBInstanceClassMemory/12582880} 公式實際上等同於 MB/12。 |
允許的同時用戶端連線數目 |
Oracle | processes |
80–20000 | LEAST({DBInstanceClassMemory/9868951}, 20000) | 使用者程序 |
Oracle | sessions |
100–65535 | 不適用 | 使用者和系統工作階段 |
PostgreSQL | max_connections |
6–8388607 | LEAST({DBInstanceClassMemory/9531392}, 5000) | 同時連線的數目上限 |
SQL Server | user connections |
0–32767 | 0 (無限制) | 並行連線的數量上限。如需詳細資訊,請參閱設定使用者連線 (伺服器組態選項) |
DBInstanceClassMemory
是以位元組為單位。如需如何計算此值的詳細資訊,請參閱 指定資料庫參數。由於為作業系統和 RDS 管理程序保留了記憶體,此記憶體大小會小於 的資料庫執行個體類別的硬體規格 中顯示的值 (單位為 gibibyte (GiB))。
例如,某些資料庫執行個體類別具有 8 GiB 的記憶體,也就是 8,589,934,592 個位元組。對於在具有 8 GiB 記憶體 (例如 db.m7g.large) 的資料庫執行個體類別上執行的 MySQL 資料庫執行個體,則使用總記憶體的方程式會是 8589934592/12582880=683
。然而,變數 DBInstanceClassMemory
會自動減去為作業系統和管理資料庫執行個體的 RDS 程序所預留的數量。然後將剩餘部分除以 12,582,880。此計算得出的 max_connections
值大約為 630,而不是 683。此值取決於資料庫執行個體類別和資料庫引擎。
當 MariaDB 或 MySQL 資料庫執行個體在小型資料庫執行個體類別 (例如 db.t3.micro 或 db.t3.small) 上執行時,可用的記憶體總數較少。對於這些資料庫執行個體類別,RDS 會預留記憶體的一大部分,而這會影響值 max_connections
。例如,在 db.t3.micro 資料庫執行個體類別上執行的 MySQL 資料庫執行個體,其預設最大連線數約為 60。您可以透過連線至資料庫 MariaDB 或 MySQL 資料庫執行個體並執行下列 SQL 命令來判斷其 max_connections
值:
SHOW GLOBAL VARIABLES LIKE 'max_connections';
Amazon RDS 中的檔案大小限制
檔案大小限制適用於特定 Amazon RDS 資料庫執行個體。如需詳細資訊,請參閱下列引擎特定限制: