[ACDU翻译] MySQL 17.2.3.1 监控复制主线程
该SHOW PROCESSLIST
语句提供的信息告诉您源上和副本上发生的有关复制的情况。有关源状态的信息,请参阅第 8.14.4 节,“复制源线程状态”。对于副本状态,请参阅 第 8.14.5 节,“复制 I/O(接收器)线程状态”和 第 8.14.6 节,“复制 SQL 线程状态”。
下面的例子说明了三个主要的复制线程,二进制日志转储线程、复制 I/O(接收者)线程和复制 SQL(应用程序)线程,如何在SHOW PROCESSLIST
.
在源服务器上,输出SHOW PROCESSLIST
如下所示:
mysql> SHOW PROCESSLIST\G
*************************** 1. row ***************************
Id: 2
User: root
Host: localhost:32931
db: NULL
Command: Binlog Dump
Time: 94
State: Has sent all binlog to slave; waiting for binlog to
be updated
Info: NULL
在这里,线程 2 是为Binlog Dump
连接的副本提供服务的线程。该State
信息表明所有未完成的更新都已发送到副本,并且源正在等待更多更新发生。如果您Binlog Dump
在源服务器上没有看到任何线程,这意味着复制没有运行;也就是说,当前没有连接副本。
在副本服务器上,输出SHOW PROCESSLIST
如下所示:
mysql> SHOW PROCESSLIST\G
*************************** 1. row ***************************
Id: 10
User: system user
Host:
db: NULL
Command: Connect
Time: 11
State: Waiting for master to send event
Info: NULL
*************************** 2. row ***************************
Id: 11
User: system user
Host:
db: NULL
Command: Connect
Time: 11
State: Has read all relay log; waiting for the slave I/O
thread to update it
Info: NULL
该State
信息表明线程 10 是与源服务器通信的复制 I/O(接收器)线程,线程 11 是正在处理存储在中继日志中的更新的复制 SQL(应用程序)线程。在 SHOW PROCESSLIST
运行时,两个线程都处于空闲状态,等待进一步的更新。
列中的值Time
可以显示副本与源相比的延迟时间。请参阅 第 A.14 节,“MySQL 8.0 常见问题解答:复制”。如果源端经过足够的时间而没有Binlog Dump
线程上的活动,则源确定副本不再连接。对于任何其他客户端连接,超时取决于 和 的 net_write_timeout
值 net_retry_count
;有关这些的更多信息,请参阅第 5.1.8 节,“服务器系统变量”。
该SHOW REPLICA STATUS
语句提供有关副本服务器上的复制处理的附加信息。请参阅第 17.1.7.1 节,“检查复制状态”。
免责声明:
1、本站资源由自动抓取工具收集整理于网络。
2、本站不承担由于内容的合法性及真实性所引起的一切争议和法律责任。
3、电子书、小说等仅供网友预览使用,书籍版权归作者或出版社所有。
4、如作者、出版社认为资源涉及侵权,请联系本站,本站将在收到通知书后尽快删除您认为侵权的作品。
5、如果您喜欢本资源,请您支持作者,购买正版内容。
6、资源失效,请下方留言,欢迎分享资源链接
文章评论