1.主节点线程状态(Replication Master Thread States):

Finished reading one binlog; switching to next binlog

线程 已经完成读取 binlog 文件,并切换到下一个 binlog 文件

Master has sent all binlog to slave; waiting for more updates

线程已经从二进制日志中读取了所有剩余的更新日 志,并将它们发送到从库。线程当前处于空闲状态,正在等待新 的更新数据的事件写入二进制日志中

Sending binlog event to slave

线程已经从二进制日志中读取 了一个事件,现在将其发送到从库(二进制日志由事件组成,一 个事件通常是由发生更新的数据和一些其他信息组成)

Waiting to finalize termination

线程停止时发生的非常短暂 的状态,线程正在执行停止线程相关的动作

2.从库IO线程 State(Replication Slave I/O Thread States):

Checking master version

在建立与主库的连接之后非常短暂 的状态,表示正在检查主库的版本号

Connecting to master

线程尝试连接到主库

Queueing master event to the relay log

线程已读取一个事 件,并将其复制到中继日志,以便 SQL 线程进行重放

Reconnecting after a failed binlog dump request

线程正在 尝试重新连接到主库

Reconnecting after a failed master event read

线程正在尝 试重新连接到主库,当重连连接成功时,状态将变为“Waiting for master to send event”

Registering slave on master

在连接到主库成功之后非常短暂 的状态,表示正在向主库注册从库的连接信息(如从库的 IP 和端 口信息等)

Requesting binlog dump

在与主库建立连接成功之后非常短 暂的状态,使用当前的 I/O 线程位置,向主库发送从当前位置开 始的二进制日志的内容的请求

Waiting for its turn to commit

如果启用了 slave_preserve_commit_order 参数,则表示从库 I/O 线程正在 等待较旧的工作线程提交数据

Waiting for master to send event

线程已经连接到主库并且 正在等待新的二进制日志事件,如果主库空闲,这可能持续很长 时间。如果等待时间持续超过 slave_net_timeout 秒,则从库 I/O 线程发生超时。此时,从库 I/O 线程认为主库的连接断开, 会尝试重新连接主库

Waiting for master update

连接到主库之前的初始状态

Waiting for slave mutex on exit

线程停止时短暂发生的状 态,表示正在回收 I/O 线程的相关互斥资源

Waiting for the slave SQL thread to free enough relay log space

如果 relay_log_space_limit 变量设置值不为 0,那么当 中继日志总大小增长到超过此值时。 I/O 线程会等待,直到 SQL 线程通过重放中继日志内容并删除重放完成的中继日志以释放中 继日志占用的空间,使其满足中继日志中大小不大于 relay_log_space_limit 变量的值时,I/O 线程才可以继续写入中 继日志操作。

Waiting to reconnect after a failed binlog dump request

如果二进制日志 dump 请求失败(由于断开连接),那么线程在 进入 sleep 状态,此时出现此状态,然后 I/O 线程定期尝试重新 连接主库。重试之间的间隔时间可以使用 CHANGE MASTER TO 语句的 MASTER_CONNECT_RETRY 选项指定

* 要注意,从库的 I/O 线程连接主库是有心跳机制的,当主库超 过这个心跳时间没有发送新的 event 到 slave 上时,I/O 线程就 对主库发起一个心跳请求,如果请求成功就重置心跳时间,当主 库有新的 event 发送到 slave 时,这个心跳时间也会进行重置。 心跳时间由 change master 语句的 MASTER_HEARTBEAT_PERIOD 选项设置(以秒为单位),范围 0 到 4294967 秒,分辨率(毫秒) 最小非零值为 0.001,表示 1 毫秒。将间隔设置为 0 时表示禁用心跳。 默认值是 slave_net_timeout 配置参数的二分之一。so,理论上是不会出 现主从数据库正常的情况下因为主库没有写数据而导致从库 I/O 线程断开的情况。

Waiting to reconnect after a failed master event read

读取 主库 binlog 时发生错误(由于断开连接)。I/O 线程在尝试重新 连接主库之前,线程正在以 CHANGE MASTER TO 语句的 MASTER_CONNECT_RETRY 选项(默认为 60)设置的秒数进行 sleep(该时间是重连失败之后的重试间隔时间)

3.从库SQL线程 State(Replication Slave SQL Thread States):

Killing slave

线程正在处理 STOP SLAVE 语句 o Making temporary file (append) before replaying LOAD DATA INFILE:线程正在执行 LOAD DATA INFILE 语句,并将 从库将要读取的数据添加到临时文件中

Making temporary file (create) before replaying LOAD DATA INFILE

线程正在执行 LOAD DATA INFILE 语句,且正 在创建临时文件,临时文件中包含了从库将要读取行数据。注 意:只有在 MySQL 5.0.3 之前的版本中,主库记录了原始 LOAD DATA INFILE 语句时,才能遇到此状态

Reading event from the relay log

线程正在从中继日志中读 取事件,以便进行重放

Slave has read all relay log; waiting for more updates

线程 已重做完所有的中继日志文件中的所有事件,正在等待 I/O 线程 向中继日志中写入新的事件

Waiting for an event from Coordinator

从库使用多线程复制 时(slave_parallel_workers 大于 1),此状态表示一个 slave works 线程正在等待协调器线程(Coordinator 线程)分配日志 事件

Waiting for slave mutex on exit

线程停止时发生的非常短暂 的状态

Waiting for Slave Workers to free pending events

当 Workers 线程处理的事件的总数量大小超过 slave_pending_jobs_size_max 系统变量的大小时,会发生等待 操作(协调器线程不进行分配事件给 worker 线程)。当 Workers 线程处理的事件的总数量大小低于 slave_pending_jobs_size_max 限制时,协调器恢复调度。只有 当 slave_parallel_workers 设置为大于 0 时,此状态才会出现

Waiting for the next event in relay log

“Reading event from the relay log”状态之前的初始状态

Waiting until MASTER_DELAY seconds after master executed event

SQL 线程已读取事件,但并没有进行应用,而 是正在等待从库设置的延迟复制时间失效。此延迟时间使用 CHANGE MASTER TO 的 MASTER_DELAY 选项设置

4.从库连接线程 State(Replication Slave Connection Thread States):

Changing master

线程正在处理 CHANGE MASTER TO 语句

Killing slave

线程正在处理 STOP SLAVE 语句

Opening master dump table

此状态发生在主库创建 dump 表之后

Reading master dump table data

"Opening master dump table"状态之后出现的状态,表示正在从主库 dump 表读取数据

MySQL Replication Thread States的更多相关文章

  1. MySQL Replication需要注意的问题

    MySQL Replication 大家都非常熟悉了,我也不会写怎么搭建以及复制的原理,网上相关文章非常多,大家可以自己去搜寻.我在这里就是想总结一下mysql主从复制需要注意的地方.有人说主从复制很 ...

  2. MySQL Replication 优化和技巧、常见故障解决方法

    MySQL 主从同步错误(error)解决(转) sql_slave_skip_counter参数 附: 一些错误信息的处理,主从服务器上的命令,及状态信息. 在从服务器上使用show slave s ...

  3. 搭建mysql主从复制---Mysql Replication

    主从复制原理 Mysql的Replication是一个异步的复制过程,从一个Mysql Instance(master)复制到另一个Mysql Instance(slave).中间需要三个线程slav ...

  4. MySQL Replication主从复制

    MySQL Replication:NySQL复制,MySQL的复制默认为异步工作模式   mysql的复制功能是mysql内置的,装上它之后就具备了这个功能,而mysql复制是mysql实现大规模高 ...

  5. 浅析 MySQL Replication(本文转自网络,非本人所写)

    作者:卢飞 来源:DoDBA(mysqlcode) 0.导读 本文几乎涵盖了MySQL Replication(主从复制)的大部分知识点,包括Replication原理.binlog format.复 ...

  6. General Thread States

    对于实践中可能出现的各种General Thread States 以下列表描述了与常规查询处理关联的线程状态值,而不是更复杂的活动,例如复制. 其中许多仅用于在服务器中查找错误. after cre ...

  7. MySQL Replication 主从复制全方位解决方案

    1.1 主从复制基础概念 在了解主从复制之前必须要了解的就是数据库的二进制日志(binlog),主从复制架构大多基于二进制日志进行,二进制日志相关信息参考:http://www.cnblogs.com ...

  8. 浅析 MySQL Replication(转)

    目前很多公司中的生产环境中都使用了MySQL Replication ,也叫 MySQL 复制,搭建配置方便等很多特性让 MySQL Replication 的应用很广泛,我们曾经使用过一主拖20多个 ...

  9. 浅析 MySQL Replication(本文转自网络)

    作者:卢飞 来源:DoDBA(mysqlcode) 0.导读 本文几乎涵盖了MySQL Replication(主从复制)的大部分知识点,包括Replication原理.binlog format.复 ...

随机推荐

  1. Linux云计算-03_必备基础命令

    Linux系统启动默认为字符界面,一般不会启动图形界面,所以对命令行的熟练程度能更加方便.高效的管理Linux系统. 本章介绍Linux系统必备命令各项参数及功能场景,Linux常见命令包括:cd.l ...

  2. AcWing 1289. 序列的第k个数

    BSNY 在学等差数列和等比数列,当已知前三项时,就可以知道是等差数列还是等比数列. 现在给你 整数 序列的前三项,这个序列要么是等差序列,要么是等比序列,你能求出第k项的值吗. 如果第k项的值太大, ...

  3. Maven:手动添加jar包进Maven本地库内

    正常maven依赖jar包的pom.xml写法如下: <!-- https://mvnrepository.com/artifact/ojdbc/ojdbc --><!-- (参数一 ...

  4. linux安装subversion

    原文: https://www.cnblogs.com/liuxianan/p/linux_install_svn_server.html 安装 使用yum安装非常简单: yum install su ...

  5. mysql 深度解析auto-increment自增列"Duliplicate key"问题

    转载自:https://cloud.tencent.com/developer/article/1367681 问题描述 近期,线上有个重要Mysql客户的表在从5.6升级到5.7后master上插入 ...

  6. buu crypto 幂数加密

    一.这和二进制幂数加密有些不同,可以从数字大小判断出来,超过4了,一般4以上已经可以表达出31以内了,所以是云影密码,以0为分隔符,01248组成的密码 二.python代码解密下 code=&quo ...

  7. Linux | 文件编辑命令

    cat cat 命令是是一次性显示文件的所有内容 cat 是 concatenate 的缩写,表示:连接/串联 cat 文件名 可以看到,cat 命令是一次性显示出所有的文件内容,这就导致了,有的文件 ...

  8. SDN开发环境搭建以及Mininet编程

    一.实验内容 搭建如下网络拓扑,并熟悉相关指令.   二.搭建开发环境 2.1 开发环境搭建 2.1.1下载ubuntu镜像文件 镜像下载地址 https://www.ubuntu.com/downl ...

  9. xmind8 Mac序列号

    1.首先去官网下载xmind8的安装包:XMind for Mac 也可以去我的百度网盘下载:    链接:https://pan.baidu.com/s/1eY52YsSaPmr-YFhB62Cli ...

  10. Scala学习——隐式转换

    scala隐式转换 一.需求:为一个类添加一个新的方法 java:动态代理 scala:隐式转换 隐式转换例子: 1.man to superMan package top.ruandb.scala. ...