图解”How MySQL Replication Works”

2009-04-22  |  18:10分类:MySQL  |  标签:  |  1,343 views

上图先:
replication

在使用MySQL的应用中,如果你的MySQL Server压力逐渐增大,在应用层优化已经到了一定瓶颈时,那么你应该首先考虑MySQL Replication。本文将利用图示的方式简单的描述出MySQL Replication是如何工作的。

如何同步

  1. 主库将所有的更新操作,写入二进制日志。
  2. 从库运行”IO线程”(Slave IO Thread)读取主库的二进制日志。
  3. 从库运行”SQL线程”(Slave SQL Thread)执行IO线程(Slave IO Thread)读取的日志中的SQL,从而保持和主库的一致。

如何分配请求

  1. 目前,这部分需要在应用层实现。
  2. 执行更新SQL(UPDATE,INSERT,DELETE)时,请求主库。
  3. 执行查询SQL(SELECT)时,请求从库。

所以,当你的应用(Application)SELECT请求所占的比率越大,那么Relication就会越有效。

喜欢本文,那就收藏到: Del.icio.us Google书签 Digg Live Bookmark Yahoo书签 Facebook 百度搜藏 添加到饭否 QQ书签 Digbuzz我挖网

1条评论 关于 “图解”How MySQL Replication Works””

  1. orczhou 发表于: 四月 22nd, 2009 18:19

    补充说明:
    1.Slave的 I/O 线程读取的二进制日志时,会将其暂时存为“中继日志”(relay logs),等待SQL线程读取并执行。

    2.Slave的I/O线程并不是直接读取Master的二进制日志文件,事实上,当I/O线程发起去请求时,Master会创建一个Binlog Dump线程将最新的二进制日志发送给Slave的IO线程。


发表您的评论