Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 Reference Manual  /  ...  /  Setting the Replication Source Configuration

19.1.2.1 设置复制源配置

要配置使用二进制日志文件位置基于的复制,您必须确保启用了二进制日志记录,并建立唯一的服务器 ID。

每个服务器在复制拓扑结构中必须配置唯一的服务器 ID,可以使用 server_id 系统变量指定。该服务器 ID 用于标识复制拓扑结构中的个体服务器,必须是介于 1 和 (232)−1 之间的正整数。默认的 server_id 值为 1;您可以在运行时通过发出类似以下的语句来更改它:

SET GLOBAL server_id = 2;

服务器 ID 的组织和选择是任意的,只要每个服务器 ID 都不同于复制拓扑结构中其他服务器的服务器 ID 即可。请注意,如果以前曾将服务器 ID 设置为 0,现在您需要重新启动服务器以使用新的非零服务器 ID。否则,在更改服务器 ID 时不需要重新启动服务器,除非您进行了其他配置更改需要重新启动。

因为二进制日志是从源到副本的更改的基础,所以在源上需要启用二进制日志记录。二进制日志记录默认启用(log_bin 系统变量设置为 ON)。--log-bin 选项告诉服务器使用什么基础名称来命名二进制日志文件。建议您指定这个选项,以便在主机名更改时可以轻松地继续使用相同的二进制日志文件名称(见 B.3.7 节,“MySQL 中的已知问题”)。如果以前曾在源上禁用了二进制日志记录使用 --skip-log-bin 选项,现在您必须重新启动服务器以启用它。

Note

以下选项也会影响源:

  • 为了在使用 InnoDB 事务的复制设置中获得最大的持久性和一致性,您应该在源的 my.cnf 文件中使用 innodb_flush_log_at_trx_commit=1sync_binlog=1

  • 确保源上的 skip_networking 系统变量未启用。如果禁用了网络功能,副本将无法与源通信,复制将失败。