zoukankan      html  css  js  c++  java
  • Replication基础(六) 复制中的三个线程(IO/SQL/Dump)

    Reference:  https://blog.csdn.net/sun_ashe/article/details/82181811?utm_source=blogxgwz1

    简介
    在MySQL复制技术中,涉及到三个线程,分别为binlog Dump线程,IO线程,SQL回放线程。本文针对于这三个线程,简要说明。


    I/O线程
    上图所示,IO线程位于从实例,其作用就是作为一个客户端,建立到master实例上的TCP链接,并且发送认证信息,bingbinlog同步协议信息,然后实时的去同步阻塞的读取master发送的binlog,并且设置有超时时间,为slave_net_timeout,如果在超过设置时间内没有收到master发送的日志信息,则认为主从之间的网络异常,或者master异常,进行网络重试。其生命周期开始于start slave或者start slave io_thread,结束于stop slave或者stop slave io_thread;

    Dump线程
    如上图所示,Dump线程位于master实例,此线程与普通线程类似,只不过接收到的是客户端发送的binlog dump命令,所以,会发送binlog,而不是其他的数据给客户端。其生命周期开始于slave的start slave或者start slave io_thread,结束于stop slave或者stop slave io_thread。

    SQL线程
    SQL回放线程位于slave实例,主要作用就是读取relay log,并且进行回放操作。其生命周期开始于start slave或者start slave sql_thread,结束于stop slave或者stop slave sql_thread;

    结束语
    关于这三个线程更多的细节,在进阶文章中展开描述,此文作为基础入门。
    ---------------------
    作者:sun_ashe
    来源:CSDN
    原文:https://blog.csdn.net/sun_ashe/article/details/82181811
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    二维数组重复合并 并计算
    处理formdata传递的json数据
    thinkphp lock 锁 的使用和例子
    docker 更新后 和wsl2直接集成
    ubuntu apt 换阿里镜像源
    使用phpstorm将本地代码实时自动同步到远程服务器
    notepad++ markdown主题
    【Git】pull遇到错误:error: Your local changes to the following files would be overwritten by merge:
    hyperf 安装扩展 protobuf
    bt[宝塔]安装redis
  • 原文地址:https://www.cnblogs.com/skying555/p/10368925.html
Copyright © 2011-2022 走看看