本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon RDS for MySQL Multi-AZ 資料庫叢集中的二進位記錄會記錄所有資料庫變更,以支援複寫 point-in-time、復原和稽核。在多可用區域資料庫叢集中,二進位日誌會將次要節點與主要節點同步,確保可用區域之間的資料一致性,並啟用無縫容錯移轉。
為了最佳化二進位記錄,Amazon RDS支援二進位日誌交易壓縮,可減少二進位日誌的儲存需求,並改善複寫效率。
多可用區域資料庫叢集的二進位日誌交易壓縮
二進位日誌交易壓縮使用 zstd 演算法來減少二進位日誌中存放的交易資料大小。啟用時,MySQL 資料庫引擎會將交易承載壓縮為單一事件,將 I/O 和儲存開銷降至最低。此功能可改善資料庫效能、減少二進位日誌大小,並最佳化資源使用,以管理和複寫多可用區域資料庫叢集中的日誌。
Amazon 透過下列參數RDS為 MySQL Multi-AZ 資料庫叢集RDS提供二進位日誌交易壓縮:
-
binlog_transaction_compression
– 啟用 (1
) 時,資料庫引擎會壓縮交易承載,並將其寫入二進位日誌做為單一事件。這可減少儲存用量和 I/O 額外負荷。參數預設為停用。 -
binlog_transaction_compression_level_zstd
– 設定二進位日誌交易的 zstd 壓縮層級。較高的值會增加壓縮比率,進一步減少儲存需求,但增加壓縮的CPU記憶體用量。預設值為 3,範圍為 1-22。
這些參數可讓您根據工作負載特性和資源可用性,微調二進位日誌壓縮。如需詳細資訊,請參閱 MySQL 文件中的二進位日誌交易壓縮
二進位日誌交易壓縮具有下列主要優點:
-
壓縮會減少二進位日誌的大小,特別是對於具有大型交易或高寫入磁碟區的工作負載。
-
較小的二進位日誌可減少網路和 I/O 額外負荷,進而提升複寫效能。
-
binlog_transaction_compression_level_zstd
參數提供壓縮比率與資源耗用之間的權衡控制。
設定多可用區域資料庫叢集的二進位日誌交易壓縮
若要為RDS適用於 MySQL Multi-AZ 資料庫叢集的 設定二進位日誌交易壓縮,請修改相關的叢集參數設定,以符合您的工作負載需求。
啟用二進位日誌交易壓縮
-
修改資料庫叢集參數群組,將
binlog_transaction_compression
參數設定為1
。 -
(選用) 根據您的工作負載需求和資源可用性調整
binlog_transaction_compression_level_zstd
參數的值。
如需詳細資訊,請參閱在 參數。
若要使用 設定二進位日誌交易壓縮 AWS CLI,請使用 modify-db-cluster-parameter-group 命令。
用於 Linux, macOS、 或 Unix:
aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name
your-cluster-parameter-group
\ --parameters "ParameterName=binlog_transaction_compression,ParameterValue=1,ApplyMethod=pending-reboot"
用於 Windows:
aws rds modify-db-cluster-parameter-group ^ --db-cluster-parameter-group-name
your-cluster-parameter-group
^ --parameters "ParameterName=binlog_transaction_compression,ParameterValue=1,ApplyMethod=pending-reboot"
若要使用 Amazon 設定二進位日誌交易壓縮API,請使用 RDS ModifyDBClusterParameterGroup
操作。