MySQL Replication Thread States
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的更多相关文章
- MySQL Replication需要注意的问题
MySQL Replication 大家都非常熟悉了,我也不会写怎么搭建以及复制的原理,网上相关文章非常多,大家可以自己去搜寻.我在这里就是想总结一下mysql主从复制需要注意的地方.有人说主从复制很 ...
- MySQL Replication 优化和技巧、常见故障解决方法
MySQL 主从同步错误(error)解决(转) sql_slave_skip_counter参数 附: 一些错误信息的处理,主从服务器上的命令,及状态信息. 在从服务器上使用show slave s ...
- 搭建mysql主从复制---Mysql Replication
主从复制原理 Mysql的Replication是一个异步的复制过程,从一个Mysql Instance(master)复制到另一个Mysql Instance(slave).中间需要三个线程slav ...
- MySQL Replication主从复制
MySQL Replication:NySQL复制,MySQL的复制默认为异步工作模式 mysql的复制功能是mysql内置的,装上它之后就具备了这个功能,而mysql复制是mysql实现大规模高 ...
- 浅析 MySQL Replication(本文转自网络,非本人所写)
作者:卢飞 来源:DoDBA(mysqlcode) 0.导读 本文几乎涵盖了MySQL Replication(主从复制)的大部分知识点,包括Replication原理.binlog format.复 ...
- General Thread States
对于实践中可能出现的各种General Thread States 以下列表描述了与常规查询处理关联的线程状态值,而不是更复杂的活动,例如复制. 其中许多仅用于在服务器中查找错误. after cre ...
- MySQL Replication 主从复制全方位解决方案
1.1 主从复制基础概念 在了解主从复制之前必须要了解的就是数据库的二进制日志(binlog),主从复制架构大多基于二进制日志进行,二进制日志相关信息参考:http://www.cnblogs.com ...
- 浅析 MySQL Replication(转)
目前很多公司中的生产环境中都使用了MySQL Replication ,也叫 MySQL 复制,搭建配置方便等很多特性让 MySQL Replication 的应用很广泛,我们曾经使用过一主拖20多个 ...
- 浅析 MySQL Replication(本文转自网络)
作者:卢飞 来源:DoDBA(mysqlcode) 0.导读 本文几乎涵盖了MySQL Replication(主从复制)的大部分知识点,包括Replication原理.binlog format.复 ...
随机推荐
- ES6深度解析3:Generators
介绍ES6 Generators 什么是Generators(生成器函数)?让我们先来看看一个例子. function* quips(name) { yield "hello " ...
- GDI+中发生一般性错误的解决办法(转载)
今天在开发.net引用程序中,需要System.Drawing.Image.Save 创建图片,debug的时候程序一切正常,可是发布到IIS后缺提示出现"GDI+中发生一般性错误" ...
- 如何使用Linux lsblk命令列出块设备信息
译至:http://linoxide.com/linux-command/linux-lsblk-command/ lsblk命令(列出块设备)用于列出所有可用的块设备的信息,但是, 它并没有列出有关 ...
- 为什么使用 LSTM 训练速度远大于 SimpleRNN?
今天试验 TensorFlow 2.x , Keras 的 SimpleRNN 和 LSTM,发现同样的输入.同样的超参数设置.同样的参数规模,LSTM 的训练时长竟然远少于 SimpleRNN. 模 ...
- 阿里云低延时直播 RTS 能力升级 让直播推流效果更佳
行业背景 直播技术飞速发展让各个行业的用户体验呈现多样化和个性化,不同业务场景下创新实践满足大众对于音视频互动体验和参与的高标准要求.历经2020年初的巨变之后,以视频.游戏.电商.教育为主的互联网经 ...
- Macbook(M1版)的用户看过来,.net 6 Preview 6支持Apple Silicon for macOS
本文由葡萄城技术团队翻译 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 我们很高兴发布.NET6预览的第6版,本次预览是倒数第二次预览了.在本次预览发布之 ...
- nodejs安装+vue安装
一.nodejs安装 电脑win7的,nodejs V12.16.2以前的版本支持win7 nodejs下载地址: http://mirrors.nju.edu.cn/nodejs/v12.15.0/ ...
- C语言:extern应用
前面我们都是将所有的代码写到一个源文件里面,对于小程序,代码不过几百行,这或许无可厚非,但当程序膨胀代码到几千行甚至上万行后,就应该考虑将代码分散到多个文件中,否则代码的阅读和维护将成为一件痛苦的事情 ...
- if函数+isna函数+vlookup函数实现不同列相同单元格内容排列在同一行
1,首先学习的网址:https://jingyan.baidu.com/album/22a299b5dd0f959e19376a22.html?picindex=1 2,excel 这也许是史上最好最 ...
- PAT乙级:1072开学寄语(20分)
PAT乙级:1072开学寄语(20分) 题干 下图是上海某校的新学期开学寄语:天将降大任于斯人也,必先删其微博,卸其 QQ,封其电脑,夺其手机,收其 ipad,断其 wifi,使其百无聊赖,然后,净面 ...