MySQL 8.4 发行说明
使用基于行的复制时,复制应用器 (SQL) 线程的当前进度通过性能模式工具阶段进行监控,使您能够跟踪操作的处理并检查已完成的工作量和估计的工作量。当启用这些性能模式工具阶段时,events_stages_current
表将显示应用器线程的阶段及其进度。有关背景信息,请参见第 29.12.5 节“性能模式阶段事件表”。
要跟踪所有三种基于行的复制事件类型(写入、更新、删除)的进度
通过发出以下命令来启用三个性能模式阶段
mysql> UPDATE performance_schema.setup_instruments SET ENABLED = 'YES' -> WHERE NAME LIKE 'stage/sql/Applying batch of row changes%';
等待复制应用器线程处理一些事件,然后通过查看
events_stages_current
表来检查进度。例如,要获取update
事件的进度,请发出以下命令mysql> SELECT WORK_COMPLETED, WORK_ESTIMATED FROM performance_schema.events_stages_current -> WHERE EVENT_NAME LIKE 'stage/sql/Applying batch of row changes (update)'
如果启用了
binlog_rows_query_log_events
,则有关查询的信息将存储在二进制日志中,并在processlist_info
字段中公开。要查看触发此事件的原始查询,请执行以下操作mysql> SELECT db, processlist_state, processlist_info FROM performance_schema.threads -> WHERE processlist_state LIKE 'stage/sql/Applying batch of row changes%' AND thread_id = N;