4.6.7.4 指定 mysqlbinlog 服务器 ID

当使用--read-from-remote-server选项调用时,mysqlbinlog连接到 MySQL 服务器,指定服务器 ID 进行标识,并从服务器请求二进制日志文件。您可以使用mysqlbinlog通过多种方式从服务器请求日志文件:

  • 指定一组明确命名的文件:对于每个文件,mysqlbinlog连接并发出Binlog dump命令。服务器发送文件并断开连接。每个文件有一个连接。

  • 指定开始文件,然后--to-last-logmysqlbinlog连接并为所有文件发出Binlog dump命令。服务器发送所有文件并断开连接。

  • 指定开始文件和--stop-never(这 table 示--to-last-log):mysqlbinlog连接并为所有文件发出Binlog dump命令。服务器发送所有文件,但在发送最后一个文件后不断开连接。

仅对于--read-from-remote-servermysqlbinlog使用服务器 ID 0 连接,该 ID 告诉服务器在发送最后一个请求的日志文件后断开连接。

对于--read-from-remote-server--stop-nevermysqlbinlog使用非零服务器 ID 进行连接,因此服务器在发送最后一个日志文件后不会断开连接。默认情况下,服务器 ID 为 65535,但可以使用--stop-never-slave-server-id进行更改。

因此,对于前两种请求文件的方式,服务器将断开连接,因为mysqlbinlog指定服务器 ID 为 0.如果提供--stop-never,则服务器不会断开连接,因为mysqlbinlog指定了非零服务器 ID。