当前位置:   首页国外主机资讯主机被动:高性能MySQL:被动模式下的主复制

主机被动:高性能MySQL:被动模式下的主复制

发布日期:2021-06-04 11:55 | 文章来源:IT168

主机被动

  这是前面描述的主主结构的变体, 它能够避免我们之前讨论的问题。 这也是构建容错性和高可用性系统的非常强大的方式,主要区别在于其中的一台主机是只读的被动主机。

  这种方式使得反复切换主动和被动主机非常方便,因为主机的配置是对称的。这使得故障转移和故障恢复很容易。它也可以让你在不关闭主机的情况下执行维护、优化表、升级操作系统(或者应用程序、硬件等)或其他任务。

  例如,执行ALTER TABLE 操作可能会锁住整个表,阻塞对表的读和写,这可能会花费很长时间并导致服务中断。然而在主-主配置下,可以先停止主动主机上的备库复制线是(这样就不会在被动主机上执行任何更新),然后在被动主机上执行ALTER操作,交换角色,最后在先前的主动主机上启动复制线程。这个主机将会读取中继日志并执行相同的ALTER语句。这可能花费很长时间,但不要紧,因为该主机没有为任何话跃查询提供服务。

  主动-被动模式的主-主结构能够帮助回避许多MySQL的问题和限制,此外还有一些工具可以完成这种类型的操作。

  让我们看看如何配置主一主主机对,在两台主机上执行如下设置后,会使共拥有对称的设置

  1. 确保两台服务上有相同的数据。

  2.启用二进制目志,选择唯的主机ID, 并创建复制账号。

  3.启用备库更 新的目志记录,后面将公看到,这是故障转移和故障恢复的关键。

  4. 把被动服务2配置成只读,防止可能与主动主机上的更新产生冲突,这一点是可选的。

  5.启动每个主机的MySQL实例。

  6.将每个主库设置为对方的备库,使用新创建的二进制日志开始工作。

  让我们看看主动主机上更新时会发生什么事情。更新被记录到二进制日志中,通过复制传递给被动主机的中继日志中。被动主机执行查询并将其记录到自己的二进制日志中(因为开启了logslaveupdates选项)。由于事件的主机ID与主动主机的相同,因此主动主机将忽略这些事件。在后面的“修改主库”可了解更多的角色切换相关内容。

  设置主动一被动的主-主拓扑结构在某种意义上类似于创建一个热备份,但是可以使用这个“备份”来提高性能,例如,用它来执行读操作、备份、“离线”维护以及升级等。真正的热备份做不了这些事情。然而,你不会获得比单台主机更好的写性能。

  当我们讨论使用复制的场景和用途时,还会提到这种复制方式。它是一种非常常见并且重要的拓扑结构。

联系我们
关于使用场景和技术架构的更多咨询,请联系我们的销售和技术支持团队。
Yingsoo Host

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部