mysql主从同步(复制)的作用
(1) 数据分布
(2) 负载平衡(load balancing)
(3) 备份
(4) 高可用性(high availability)和容错
MYSQL主从同步的原理
过程:从服务器的IO线程从主服务器获取二进制日志,并在本地保存为中继日志,然后通过SQL线程来在从上执行中继日志中的内容,从而使从库和主库保持一致。
主从同步的详细过程:
1,主服务器验证连接。
2,主服务器为从服务器开启一个线程。
3,从服务器将主服务器日志的偏移位告诉主服务器。
4,主服务器检查该值是否小于当前二进制日志偏移位。
5,如果小于,则通知从服务器来取数据。
6,从服务器持续从主服务器取数据,直至取完,这时,从服务器线程进入睡眠,主服务器线程同时进入睡眠。
7,当主服务器有更新时,主服务器线程被激活,并将二进制日志推送给从服务器,并通知从服务器线程进入工作状态。
8,从服务器SQL线程执行二进制日志,随后进入睡眠状态。
从节点执行命令show slave statusG,为什么只有当Slave_IO及Slave_SQL进程都正常运行时,即YES状态,从节点才能在数据上达到与主节点同步。
show slave statusG结果显示参数可以参考官方手册:
http://dev.mysql.com/doc/refman/5.1/en/show-slave-status.html