mysql复制 - master到slave

时间:2011-09-07 09:44:08

标签: mysql replication database-replication master-slave

我已经成功建立了一个主从环境,它肯定能正常工作。

我唯一的问题是从表中选择计数,它们不一样但是从主机5分钟后选择,在从机上创建50行,也创建了50行(这就是为什么我说'我'我确定工作正常)

站长:

+----------+
| COUNT(*) |
+----------+
|    77634 |
+----------+
1 row in set (0.00 sec)

从站:

+----------+
| COUNT(*) |
+----------+
|    76932 |
+----------+
1 row in set (0.00 sec)

知道为什么会这样吗?是否有可能当我使用'CHANGE MASTER TO'命令更改从站指向主站时,主站的二进制日志文件的位置已经移动了?

2 个答案:

答案 0 :(得分:2)

尝试从属设备上显示“SHOW SLAVE STATUS”以查看是否发生了任何错误。

您还可以尝试从master加载数据以重新建立同步。

答案 1 :(得分:0)

MySQL复制不“可靠”,如果出错也无法自动重新同步。即使没有计划外重启等,也有很多方法可以解决。

您需要积极监控它,以确保它能够在任何时间内工作。

至少,你需要做两件事:

  1. 检查SHOW SLAVE STATUS的输出(在每个从站上)以确保线程正在运行,没有报告错误且seconds_behind_master不是太多。
  2. 定期对每个slave / master执行某种一致性检查 - 我建议mk-table-checksum使用--replication选项
  3. 将这些检查的输出挂钩到您的监控系统,以便您的操作人员收到警报。

    您的Ops员工还需要知道如何修复它(转储/恢复或其他一些修复)。你肯定需要为Ops写一些知识库文章。

    我以前这样做过 - 这不是一件容易的事,你可以轻易搞定。