3

我最近需要执行一些数据库重新同步,并且有一个关于(似乎是)在将数据库转储到主服务器之前发出“RESET MASTER”的常见做法的问题。

在从主数据库转储数据库之前,我发现的围绕此过程的几乎所有文档都有一个“RESET MASTER”。

示例:https ://stackoverflow.com/a/3229580/1570785

然而,在生产环境中,这似乎适得其反,主要是因为“RESET MASTER”命令会清除现有的二进制日志。因此,如果在复制中断时您的主服务器出现问题,您最终会得到一个不一致/损坏的主服务器一个不同步的从服务器。

鉴于首先需要执行此过程(即 mysql 复制出现问题),仅仅因为从站需要清除二进制日志(可用于从 COMPLETE 灾难中恢复)似乎是不明智的重新同步。

我真正要问的是:我错过了什么 - 在从主站转储之前执行“重置主站”是否有正当理由?

4

1 回答 1

0

这不是必需的。如果您使用 mysqldump 创建转储,请添加以下选项: --single-transaction- 不锁定 innodb 表并创建一致的快照。 --master-data- 添加主服务器的二进制日志位置,该从服务器应该开始复制。

于 2015-08-11T10:35:11.250 回答