我想在我的 Amazon Relational Database Service (Amazon RDS) for MariaDB 或 MySQL 資料庫執行個體讀取複寫中執行讀取和寫入操作。我該怎麼做?
簡短說明
Amazon RDS 資料庫執行個體讀取複寫在設計上為唯讀。在某些情況下,您可能需要設定資料庫執行個體讀取複寫,使該複寫可供修改。
解決方法
如果您使用的是 Amazon RDS for MySQL 或 MariaDB,請將資料庫執行個體讀取複寫設定為讀取/寫入。在資料庫執行個體相關聯的資料庫參數群組中,將 read_only 參數設為 false,即可完成此操作。在使用其他 Amazon RDS 引擎 (例如 Amazon Aurora) 時,無法修改 read_only 參數。
**注意:**當您在複寫上啟用寫入時,自動化作業 (例如備份、還原和容錯移轉) 不會受到影響。但是,如果在不了解寫入影響的情況下執行寫入,可能會導致不一致或複寫失敗。
若要將您的 Amazon RDS 資料庫執行個體讀取複寫設定為讀取/寫入,請遵循以下步驟:
- 為您的 MySQL 或 MariaDB 執行個體建立資料庫參數群組。
- 修改參數群組。
- 將您的 RDS 資料庫執行個體與資料庫參數群組建立關聯。
注意: 如果在建立資料庫執行個體時未指定資料庫參數群組,系統會建立預設的資料庫參數群組,也就是說將無法修改預設參數群組。如果已經有與執行個體相關聯的自訂參數群組,則無需新建。如需資料庫參數群組的更多相關資訊,請參閱 Working with parameter groups (使用參數群組)。
建立資料庫參數群組
- 開啟 Aurora 和 RDS 主控台。
- 在導覽窗格中,從 Parameter groups (參數群組) 中選擇 Create parameter group (建立參數群組)。
- Parameter group family (參數群組系列) 請選擇參數群組系列。
- Type (類型) 請選擇 DB Parameter Group (資料庫參數群組)。
- 針對 Group name (群組名稱),輸入新資料庫參數群組的名稱。
- 針對 Description (描述),輸入新資料庫參數群組的描述。
- 選擇 Create (建立)。
修改參數群組
- 開啟 Aurora 和 RDS 主控台。
- 在導覽窗格中,從 Parameter groups (參數群組) 中選取想要修改的參數群組。
- 選擇 Parameter group actions (參數群組動作),然後選擇 Edit (編輯)。
- 編輯下列參數:read_only = 0。
- 選擇 Save changes (儲存變更)。
將您的 RDS 資料庫執行個體與資料庫參數群組建立關聯
- 開啟 Aurora 和 RDS 主控台。
- 從導覽窗格的 Databases (資料庫) 中,選取想要與已修改資料庫參數群組建立關聯的資料庫執行個體。
- 選擇 Modify (修改)。
**注意:**執行個體狀態為 Modifying (正在修改),參數群組為 Applying (正在套用)。
- 從 Database options (資料庫選項) 中,選擇想要與資料庫執行個體建立關聯的參數群組。
- 在執行個體狀態變更為 Available (可用) 且參數群組變更為 Pending-reboot (等待重新啟動) 後,重新啟動執行個體且不進行容錯移轉。
注意: 參數群組名稱會立即變更,但要等到您在不進行容錯移轉的情況下重新啟動執行個體後,參數的變更才會套用。
相關資訊
Overview of Amazon RDS read replicas (Amazon RDS 讀取複寫概觀)
如何修改 Amazon RDS 資料庫參數群組的值?