添加二进制日志到现有的MySQL服务器

我在一台Centos服务器上有一个相当大的(〜50m行)数据库。 我想设置复制,但现有的数据库没有二进制日志。

有没有办法追溯添加二进制日志,以便可以复制数据?

如果不是的话,我认为唯一的方法是使用mysqldump转储数据库,然后将其导入到新安装的服务器上,该服务器启用了二进制日志,然后使用新的服务器作为新的主服务器 – 任何问题? 我是否需要导出/导入具有特定标志的数据?

有没有办法追溯添加二进制日志,以便可以复制数据?

是。 虽然需要重新启动服务器,但您可以随时将单个MySQL服务器升级到复制群集中的主服务器。

这些步骤在手册中有很好的logging: https : //dev.mysql.com/doc/refman/5.7/en/replication-configuration.html

实质上,您通过开始收集二进制日志来将单个MySQL升级到主服务器。 一旦二进制日志logging已经开始,你可以创build一个初始的输出,从正在运行的主机来填充从属。 使用--master-data=1选项运行mysqldump 。 该选项将允许从设备确定在主设备上创build导出的位置。

一旦导入导出完成后,从机可以使用master-data查询主机重放主机上的二进制日志中发生的任何和所有事务,这是自创buildmysqldump导出之后发生的。