我有 Amazon Aurora MySQL 相容版本資料庫叢集。我想增加 binlog 保留以提高 binlog 提取的性能。
簡短描述
若要增加 Aurora MySQL 相容資料庫叢集的 binlog 的可用性,請增加資料庫叢集的 binlog 保留期間。
注意: 在 Aurora MySQL 相容資料庫叢集上開啟 binlog 會產生下列效能影響:
- 由於這會導致額外的寫入開銷,因此僅在必要時將其開啟。
- 由於 binlog 復原程序,因此會增加重新開機時的引擎啟動時間。
最佳實務是在下列情況下,在 Aurora MySQL 相容資料庫叢集中開啟二進位日誌:
- 適用於跨 AWS 區域的 Aurora 僅供讀取複本
- 適用於 Aurora 手動複製到外部與 MySQL 相容的資料庫
**注意:**Aurora MySQL 相容不會使用 binlog 進行叢集內複寫。Aurora MySQL 相容的全域資料庫不會使用 binlog。
解決方法
在 Aurora MySQL 相容資料庫叢集中開啟二進位記錄功能
- 開啟 Amazon Relational Database Service (Amazon RDS) 主控台。
- 在導覽窗格中,選擇參數群組。
注意: 如果您使用預設的 Aurora 資料庫叢集參數群組,亦請建立新的資料庫叢集參數群組。然後,針對類型,選擇資料庫叢集參數群組。
- 選擇資料庫自訂叢集參數群組。然後,選擇參數群組動作。
- 選擇編輯。
- 變更 binlog_format 格式參數的值。例如: ROW、Statement 或 MIXED。
- 選擇儲存變更。
如需詳細資訊,請參閱如何為 Aurora MySQL 相容叢集開啟二進位日誌?
增加 Aurora MySQL 相容資料庫叢集中的 binlog 保留
確認您的複寫來源會保留 binlog 檔案,直到變更套用至複本。
注意: 刪除 binlog 檔案之前,請務必選擇保留時間範圍。保留時間範圍必須夠長,確保在刪除複本之前,變更已經套用至複本。
若要增加資料庫叢集的 binlog 保留,請使用 mysql_rds_set_configuration 程序。您可以在撰寫器執行個體上執行下列命令和範例參數,以保留 binlog 檔案七天:
CALL mysql.rds_set_configuration('binlog retention hours', 168);
對於 2.11 之前的 Aurora MySQL 相容 (與 MySQL 5.7 相容) 版本,binlog 保留小時數的最大值為 168 (7 天)。因此,您必須將此值輸入為介於 1 至 168 之間的數字,或將其輸入為 NULL。
對於 2.11.0 及更新版本,binlog 保留小時數的最大值為 2,160 (90 天)。如果您為 binlog 保留小時數輸入的值大於 2,160,則此值預設為 2,160。
相關資訊
在複寫來源上保留二進位日誌,直到不再需要二進位日誌