2019-10-28

mysql 主从原理

1.主要用途
读写分离
数据实时备份,当系统故障,方便切换
高可用|架构扩展

mysql 主从原理:

1)从库执行 change master to 语句,会立即将主库信息记录到master.info中

(2)从库执行 start slave语句,会立即生成IO_T和SQL_T

(3)IO_T 读取master.info文件,获取到主库信息

(4)IO_T 连接主库,主库会立即分配一个DUMP_T,进行交互

(5)IO_T 根据master.info binlog信息,向DUMP_T请求最新的binlog

(6)主库DUMP_T,经过查询,如果发现有新的,截取并反回给从库IO_T

(7)从库IO_T会收到binlog,存储在TCP/IP缓存中,在网络底层返回ACK

(8)从库IO_T会更新master.info ,重置binlog位置点信息

(9)从库IO_T会将binlog,写入到relay-log中

(10)从库SQL_T 读取Relay-log.info 文件,获取上次执行过的位置点

(11)SQL_T按照位置点往下执行relaylog日志

(12)SQL_T执行完成后,重新更新relay-log.info

(13)relaylog定期自动清理的功能。

细节:

主库发生了信息的修改,更新二进制日志完成后,会发送一个“信号”给Dump_T,Dump_T通知给IO_T线程

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 虽然不能恢复百分百,至少能将损失降到最低。 有个问题测试: 主从同步时,主库网络断开,binlog dump线程...
    kun_zhang阅读 3,091评论 0 6
  • https://www.cnblogs.com/along21/p/8011596.html https://bl...
    SkTj阅读 3,179评论 1 4
  • 神奇的力量,力量的本质读后感 力量有时会被我们认为我们自身有多大的劲儿。我就是说在政治上我们有多大的权力。 但是这...
    b0c03fa73869阅读 400评论 0 1
  • 我知道情起于何时,却不知将终于何地,好在我还能承受,一切交给时间吧! 柳拾意《醉生梦死》
    柳拾意阅读 107评论 0 0
  • It's weekend again,I feel so better.So,I spend to have ...
    宋颐炫阅读 565评论 0 0