在MySQL中显示复制效果的好方法是什么?

时间:2012-06-07 11:31:28

标签: mysql replication

我们必须显示出差异,以显示使用复制的优势。我们有两台计算机,由teamviewer链接,因此我们可以向我们的班级展示我们正在做的事情。

  • 是否可以显示性能差异? (执行某些查询需要多长时间?)
  • 我们应该测试哪些查询? (换句话说,使用/不使用复制最大的区别在哪里)
  • 我们应该如何填写数据库?应该有多少数据?

非常感谢!

2 个答案:

答案 0 :(得分:0)

我想上述问题的答案取决于诸如您使用的存储引擎,数据库大小以及您选择的复制架构等因素。

我不认为复制会对简单的master-> slave架构的查询执行产生太大影响。但是,如果你有一个架构,其中有两个主机:一个处理写入,复制到另一个专门处理读取的主机,然后复制到处理备份的从机,那么你更有可能提供一些更积极的情景。阅读锁和存储引擎,因为这可能会影响您的选择。

显示复制如何积极的一种简单方法是演示一种简单的备份策略。例如。在主服务器上进行每小时备份本身可以使底层应用程序在备份期间完全停止(使用mysqldump进行备份会锁定表,以便不会发生读/写操作)。而复制到奴隶,然后从那里采取备份否定了这种影响。

如果你想显示详细的统计数据,最好先查看一些基准测试/分析工具(sysbench,mysqlslap,sql-bench等等)。但这可能变得非常复杂。 也值得一看这里的Percona Toolkit和Percona监控插件:http://www.percona.com/software/

答案 1 :(得分:0)

Replication有几个好处:

    通过主/从设置增加
  • 稳健性。如果主站出现问题,您可以切换到从站作为备份
  • 客户端的响应时间可以通过分割负载来处理主服务器和从服务器之间的客户端查询来实现
  • 使用复制的另一个好处是,您可以使用从属服务器执行数据库备份,而不会打扰主服务器。

使用复制总是一件安全的事情,你应该复制你的生产服务器总是失败它会有所帮助。

您可以在显示复制性能时显示seconds_behind_master值,这显示了从属设备“迟到”的指示,此值不应超过600-800秒,但网络延迟在此非常重要。 确保现在正确配置MasterSlave服务器 您可以停止slave服务器并让Master服务器发生一些更新/插入(批量插入),现在启动slave服务器,您将看到它应该保留更大的seconds_behind_master值在减少到达0值。

有一个名为MONyog - MySQL Monitor and Advisor的工具可以实时显示复制状态。 enter image description here

此处还解释了基于语句或基于行的使用何种复制 http://dev.mysql.com/doc/refman/5.1/en/replication-sbr-rbr.html