📋 目录一、统计概览二、Top10 慢查询明细三、高频慢查询模式(指纹聚合,1721 条 / 四、触发深度分析的模式详情五、逐条优化建议汇总六、数据来源与生成时间

MySQL 慢查询日报 2026-10-20

统计口径:2026-10-20 00:00:00 ~ 23:59:59(Asia/Shanghai),ES @timestamp 过滤(UTC 区间 [2026-10-20T00:00:00+08:00, 2026-10-21T00:00:00+08:00))。
数据来源:MCP es_slow_logs / es_search(staging,索引 mysql_slow-*);表结构与执行计划经 MCP connect → describe_schema → explain(全程只读)。
生成时间:2026-10-21 10:10 (UTC+8)。

一、统计概览

指标数值
慢查询总条数1,721
累计耗时16,693 s(≈ 4.64 h)
其中备份导出(user=backup)429 条 / 12,793 s(占耗时 76.6%)
非备份慢查询1,292 条 / 3,900 s
慢查询用户 Top5backup(429)、a8591(334)、8591(317)、jmysql(243)、sonic(170)
来源主机 Top5LAN_addcn_27(525)、LAN_addcn_84(374)、LAN_addcn_46(268)、LAN_addcn_27_3307(242)、LAN_addcn_40_3308(189)
去重指纹数604

二、Top10 慢查询明细

#耗时(s)用户库.表rows_examined/sent类型判定
11620.13backupt8891.t_item_modi_histories5,693,964 / 5,693,964备份全表导出(大结果集传输)
21181.74backupt8891.t_sele_item_infos3,290,762 / 3,290,762备份全表导出
3522.67backupt8891.yahoo_car_details16,681 / 16,681备份全表导出(行均耗时高,宽行)
4384.20backupt8891.t_subscription_push39,105,741 / 39,105,741备份全表导出(3910 万行大表)
5339.20backupt591.t1_daily_report30,270,464 / 30,270,464备份全表导出(3027 万行大表)
6304.01sonic(事务提交) commit;0 / 0其他:大事务/IO 提交延迟,非查询扫描
7296.15backupt8891.t_sele_item_photos22,929,970 / 22,929,970备份全表导出
8282.58backupanylink.access_audit61,767,990 / 61,767,990备份全表导出(6177 万行,当日最大扫描量表)
9274.54backuphk8591.h8_orders2,664,384 / 2,664,384备份全表导出
10265.35backuphk8591.h8_finance_account_logs13,603,054 / 13,603,054备份全表导出

Top10 中 9 条为 mysqldump 全表导出(user=backup),Lock_time 均 <1ms,属于纯大结果集顺序读传输,无索引问题,不做深度分析。唯一非备份条目是 sonic 用户的 commit;(304s),属大事务提交/IO 刷新延迟,与查询计划无关(详见 3.2)。

三、高频慢查询模式(指纹聚合,1721 条 / 604 个指纹)

指纹归一化规则:字符串/数字字面量、IN 列表 → ?,保留库表名与 SQL 骨架。

3.1 按条数 Top5

#条数平均(s)最大(s)累计(s)用户主机指纹(截断)
12701.051.57282.2a8591LAN_addcn_27SELECT ... FROM gameList a LEFT JOIN hitCount_month b ON a.id=b.hitId AND b.hitType=? AND b.themonth=? WHERE a.id not in(?) ... ORDER BY b.monthTotal DESC ⚠️
21711.622.84276.8jmysqlLAN_addcn_37/40_3308SHOW ENGINE INNODB STATUS; ⚠️
31704.71304.01800.7sonicLAN_addcn_84commit; ⚠️
4751.211.4890.4a591LAN_addcn_46select i.*, COALESCE(...) from t1_design_i...
5701.322.4592.18591/jmysqlLAN_addcn_27/46# administrator command: Ping;

3.2 按累计耗时 Top5

#累计(s)条数平均(s)最大(s)用户主机指纹(截断)
11620.111620.131620.13backup 🗄️LAN_addcn_84SELECT /*!? SQL_NO_CACHE */ * FROM t8891.t_item_modi_histories
21181.711181.741181.74backup 🗄️LAN_addcn_84SELECT ... FROM t8891.t_sele_item_infos
3800.71704.71304.01sonicLAN_addcn_84commit; ⚠️
4522.71522.67522.67backup 🗄️LAN_addcn_84SELECT ... FROM t8891.yahoo_car_details
5497.81631.1174.348591LAN_addcn_27_3307SELECT sum(after_amount-before_amount) ... FROM h8_finance_account_logs where user_id=? and sub_account=?

四、触发深度分析的模式详情

4.1 ⚠️ gameList LEFT JOIN hitCount_month(270 次,均 1.05s,累计 282s)

SELECT a.id,...,b.monthTotal FROM gameList a LEFT JOIN hitCount_month b ON a.id=b.hitId AND b.hitType='deal' AND b.themonth='202610' WHERE a.id not in(3440,...,18761) AND a.parent_id='0' AND a.type='game' AND FIND_IN_SET('denyShow',setInfo)<>2 ORDER BY b.monthTotal DESC;

  1. hitCount_month 加联合索引 ALTER TABLE hitCount_month ADD INDEX idx_hitId_themonth_hitType (hitId, themonth, hitType); 消除被驱动表回表过滤(收益最直接);
  2. gameList 加联合索引 ADD INDEX idx_type_parent (type, parent_id),使驱动表由 ALL 变 ref;
  3. NOT IN (64 个字面量) 建议改为临时排除表或固化清单表;FIND_IN_SET('denyShow',setInfo)<>2 无法走索引(SET 列函数),如高频可加冗余 is_denyShow 标记列;
  4. 该查询结果日内高度重复(270 次/天、同月维度),建议加 60s~300s 应用层缓存,可立刻消除 ~282s/天。

4.2 ⚠️ SHOW ENGINE INNODB STATUS(171 次,均 1.62s,累计 277s)

4.3 ⚠️ sonic 用户 commit;(170 次,均 4.71s,最大 304s,累计 801s)

五、逐条优化建议汇总

  1. 【索引】a8591.hitCount_month:新增 (hitId, themonth, hitType) 联合索引(对应 4.1,270 次/天)。
  2. 【索引】a8591.gameList:新增 (type, parent_id) 联合索引(对应 4.1)。
  3. 【缓存】gameList 月榜查询加 60~300s 应用缓存(对应 4.1)。
  4. 【SQL 改写】NOT IN (64 个字面量) 改排除表;FIND_IN_SET 改冗余标记列(对应 4.1)。
  5. 【事务】sonic 平台批量写改分批提交,控制单事务大小(对应 4.3)。
  6. 【观察】h8_finance_account_logs (user_id, sub_account) 求和均值 31s,建议补联合索引后复查(3.2 注)。
  7. 【备份】Top10 中 9 条为 mysqldump 全表导出,无优化动作必要;如需降低对 staging 影响,可将 anylink.access_audit(6177 万行)、t_subscription_push(3910 万行)改为限流导出或增量备份窗口。
  8. 【监控】SHOW ENGINE INNODB STATUS 采样 171 次/天,可适当降频(对应 4.2)。

六、数据来源与生成时间