MySQL MTS - 等待协调员发来的事件

时间:2016-04-05 06:15:43

标签: mysql replication

我正在尝试在5.7上设置mysql mts复制。

我正在使用LOGICAL_CLOCK复制一个数据库:

mysql> show variables like 'slave_parallel%';
+------------------------+---------------+
| Variable_name          | Value         |
+------------------------+---------------+
| slave_parallel_type    | LOGICAL_CLOCK |
| slave_parallel_workers | 4             |
+------------------------+---------------+
2 rows in set (0.00 sec)

但只有一个线程处于活动状态,其他线程只是等待:

mysql> show processlist;
+--------+-------------+-----------------------+--------------------+---------+--------+---------------------------------------------+----------------------------------------------------------------------------+-----------+---------------+
| Id     | User        | Host                  | db                 | Command | Time   | State                                       | Info                                                                       | Rows_sent | Rows_examined |
+--------+-------------+-----------------------+--------------------+---------+--------+---------------------------------------------+----------------------------------------------------------------------------+-----------+---------------+
|   8103 | system user |                       | NULL               | Connect |  72189 | Waiting for master to send event            | NULL                                                                       |         0 |             0 |
|   8104 | system user |                       | NULL               | Connect |      0 | Waiting for dependent transaction to commit | NULL                                                                       |         0 |             0 |
|   8105 | system user |                       | db_repl            | Connect | 344764 | System lock                                 | DELETE FROM docs WHERE id = 21099810                                       |         0 |             0 |
|   8106 | system user |                       | NULL               | Connect | 344765 | Waiting for an event from Coordinator       | NULL                                                                       |         0 |             0 |
|   8107 | system user |                       | NULL               | Connect | 344771 | Waiting for an event from Coordinator       | NULL                                                                       |         0 |             0 |
|   8108 | system user |                       | NULL               | Connect | 344813 | Waiting for an event from Coordinator       | NULL                                                                       |         0 |             0 |
| 600637 | sphinx      | localhost             | mysql              | Query   |      0 | starting                                    | show processlist                                                           |         0 |             0 |
+--------+-------------+-----------------------+--------------------+---------+--------+---------------------------------------------+----------------------------------------------------------------------------+-----------+---------------+
7 rows in set (0.00 sec)

如何调试配置以查看线程未激活的原因?

P.S。我有高负载主机并且有很大的从机延迟,因为slave只有一个线程可以复制,所以我需要增加从机线程以减少“Seconds_behind_master”。

0 个答案:

没有答案