小豹子的网络记事本

记录每一个有意思的细节

slave_master_info和slave_relay_log_info中的Master_log_pos不一致

最近在研究mysql的主从,发现一个问题,我在主库做任何修改时,在从库中只有slave_relay_log_info中的Master_log_pos在变化,而slave_master_info中的Master_log_pos竟然不发生变化

1. 首先看参数

(root@localhost)[mysql]> show variables like '%repository%';
+---------------------------+-------+
| Variable_name             | Value |
+---------------------------+-------+
| master_info_repository    | TABLE |
| relay_log_info_repository | TABLE |
+---------------------------+-------+

 

2. 通过官方文档看这两张表的定义

1

2


3. 看从库的同步情况

3

 

4. 查看这两张表的内容          
        

45  

 

5. 问题

可以看到slave_master_info中的Master_log_pos一直是154,而按照官方文档的说明,它应该也是1051才对,这是什么原因呢。通过询问摩天轮的大神,原来是这个参数sync_master_info搞的鬼。这个参数控制从库多久更新一次slave_master_info,默认是10000,即每10000个events更新一次。        

posted @ 2019-09-11 14:12  小豹子加油  阅读(2045)  评论(0编辑  收藏  举报