本文主要是介绍书生笔记-mysql主库dump线程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《深入理解mysql主从原理32讲》学习笔记
每一个mysql的从库slave都会对于一个 dump线程,如上图的 Binlog Dump GTID .
实际上在启动之前还会和从库的IO线程进行多次的语句交互,然后注册从库,最后才是进行DUMP线程的启动。这些内容会在后续的IO线程中讲解,这里主要讨论的是POSITION MODE模式和GTID AUTO_POSITION MODE模式下的启动流程
一,POSITION MODE模式和GTID AUTO_POSITION MODE模式的不同
首先获取从库的信息是不一样的,调用的接口也不一样。
POSITION模式:调用的是com_binlog_dump函数
使用到IO线程传输过来的信息master log name 和master log position 进行主库binary log 的定位
GTID_AUTO_POSITION模式:调用com_binlog_dump_gtid函数
使用的是从库的GTID SET信息进行主库 binary log 文件的查找,然后使用GTID SET在binary log 文件内部进行过滤查找具体的文职,也就是说这种模式下master log name 和master log position是没有用处的。注意这个GTID_SET 和参数relay_log_recovery参数设置有关,如果设置了relay_log_recovery=ON,retrieved_gtid_set 将不会使用。
下面结合一下从库的IO线程,看看IO线程是如何发送信息
这篇关于书生笔记-mysql主库dump线程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!