存取 MySQL 二進位日誌 - Amazon Relational Database Service

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

存取 MySQL 二進位日誌

您可使用 mysqlbinlog 公用程式,從 RDS for MySQL 資料庫執行個體下載或串流二進位日誌。二進位日誌會下載至您的本機電腦,您可於此執行動作,例如使用 mysql 公用程式來重新執行日誌。如需使用 mysqlbinlog 公用程式的詳細資訊,請參閱 MySQL 文件中的使用 mysqlbinlog 備份二進位日誌檔案

若要在 Amazon RDS 執行個體上執行 mysqlbinlog 公用程式,請使用下列選項:

  • --read-from-remote-server - 必要項目。

  • --host – 來自執行個體端點的 DNS 名稱。

  • --port – 執行個體使用的連接埠。

  • --user – 已授予 REPLICATION SLAVE 許可的 MySQL 使用者。

  • --password – MySQL 使用者的密碼,或者省略密碼值,讓公用程式提示您密碼。

  • --raw – 以二進位格式下載檔案。

  • --result-file – 接收列輸出的本機檔案。

  • --stop-never – 串流二進位日誌檔。

  • --verbose – 當您使用 ROW binlog 格式時,請加入此選項,將資料列事件視為虛擬 SQL 陳述式。如需 --verbose 選項的詳細資訊,請參閱 MySQL 文件中的 mysqlbinlog row event display

  • 指定一個或一個以上的二進位日誌檔案名稱。若要取得可用日誌清單,請使用 SQL 命令 SHOW BINARY LOGS

如需 mysqlbinlog 選項的詳細資訊,請參閱 MySQL 文件中的 mysqlbinlog — 處理二進位日誌檔案的公用程式

下列範例顯示如何使用 mysqlbinlog 公用程式。

對於LinuxmacOS、或Unix:

mysqlbinlog \ --read-from-remote-server \ --host=MySQLInstance1.cg034hpkmmjt.region.rds.amazonaws.com \ --port=3306 \ --user ReplUser \ --password \ --raw \ --verbose \ --result-file=/tmp/ \ binlog.00098

在Windows中:

mysqlbinlog ^ --read-from-remote-server ^ --host=MySQLInstance1.cg034hpkmmjt.region.rds.amazonaws.com ^ --port=3306 ^ --user ReplUser ^ --password ^ --raw ^ --verbose ^ --result-file=/tmp/ ^ binlog.00098

Amazon RDS 通常會儘快清除二進位日誌,但執行個體上必須有可由 mysqlbinlog 存取的二進位日誌。若要指定保留二進位日誌的 RDS 時數,請使用 mysql.rds_set_configuration 預存程序,並指定讓您有足夠時間下載日誌的期間,如下列範例所示。設定保留期間之後,請監控資料庫執行個體的儲存體用量,確定保留的二進位日誌沒有佔用太多儲存空間。

下列範例將保留期間設定為 1 天。

call mysql.rds_set_configuration('binlog retention hours', 24);

若要顯示目前設定,請使用 mysql.rds_show_configuration 預存程序。

call mysql.rds_show_configuration;