MySQL 8.4 版本資訊
當使用 --read-from-remote-server
選項叫用時,mysqlbinlog 會連線至 MySQL 伺服器,指定一個伺服器 ID 來識別自己,並從伺服器請求二進位記錄檔。您可以使用 mysqlbinlog 以多種方式從伺服器請求記錄檔
指定一組明確命名的檔案:針對每個檔案,mysqlbinlog 會連線並發出
Binlog dump
命令。伺服器會傳送檔案並中斷連線。每個檔案有一個連線。指定開始檔案和
--to-last-log
:mysqlbinlog 會連線並發出所有檔案的Binlog dump
命令。伺服器會傳送所有檔案並中斷連線。指定開始檔案和
--stop-never
(這表示--to-last-log
):mysqlbinlog 會連線並發出所有檔案的Binlog dump
命令。伺服器會傳送所有檔案,但在傳送最後一個檔案後不會中斷連線。
僅使用 --read-from-remote-server
時,mysqlbinlog 會使用伺服器 ID 0 連線,這會告知伺服器在傳送最後一個要求的記錄檔後中斷連線。
使用 --read-from-remote-server
和 --stop-never
時,mysqlbinlog 會使用非零伺服器 ID 連線,因此伺服器在傳送最後一個記錄檔後不會中斷連線。伺服器 ID 預設為 1,但可以使用 --connection-server-id
變更。
因此,對於前兩種請求檔案的方式,伺服器會中斷連線,因為 mysqlbinlog 指定的伺服器 ID 為 0。如果指定 --stop-never
,則不會中斷連線,因為 mysqlbinlog 指定的伺服器 ID 為非零值。