MySQL 慢查询日报 2026-09-02

环境:staging | 统计范围:2026-09-02 00:00:00 ~ 23:59:59 (Asia/Shanghai)
数据来源:Elasticsearch 慢日志索引(@timestamp,UTC+8 全天 → UTC [2026-09-01T16:00Z, 2026-09-02T16:00Z)),经 MCP es_slow_logs 聚合 Top10 | env=staging

一、统计概览

指标值
昨日慢查询总数1,280 条
展示条数Top 10(按耗时降序)
涉及实例staging/tw8591(192.168.8.27:3306)、staging/hk8591(192.168.8.27:3307)、staging/100-slave(192.168.8.46:3306)
主要慢因分布备份全表导出 4 条(大结果集传输);Telescope 写入/预处理 6 条(精确卡 300s 阈值,疑似锁等待/innodb 阻塞)
Top10 总耗时≈ 4,204 秒(约 70 分钟)

一句话结论:昨日 staging 无业务 SELECT 缺索引问题;慢查询几乎全部来自 ①mysqldump 类备份任务对大表/宽表的全表 SELECT * 导出,②Laravel Telescope 调试组件向 t8_extends.telescope_entries 写入超长 JSON 时被阻塞到精确 300 秒(超时阈值)。

二、Top10 明细

#耗时(s)锁时间(s)扫描行返回行用户/库实例SQL(截断)慢因类型
11152.030.000379,83579,835backup / yy_t8_datastaging/tw8591SELECT /*!40001 SQL_NO_CACHE */ * FROM t8_game.t8_embeddings_cache大结果集传输(宽行 JSON 向量列)
2817.450.000555,29155,291backup / a8591staging/tw8591SELECT /*!40001 SQL_NO_CACHE */ * FROM game.t8_embeddings_cache大结果集传输(同上,另一库)
3313.940.0002192,835192,835backup / hk8591staging/hk8591SELECT /*!40001 SQL_NO_CACHE */ * FROM hk8591.h8_telescope_entries大结果集传输(longtext content 列)
4310.520.000029,334,13929,334,139backup / t591_bakstaging/100-slaveSELECT /*!40001 SQL_NO_CACHE */ * FROM t591.t1_daily_report大结果集传输(2933 万行全表)
5300.00380.0000008591 / a8591staging/tw8591# administrator command: Prepare精确卡 300s 阈值:锁等待/连接阻塞
6300.00300.000000a8591 / t8_extendsstaging/tw8591INSERT INTO telescope_entries (batch_id, content, ...) VALUES (超长 JSON)精确卡 300s 阈值:锁等待/innodb_log_wait
7300.00280.000000a8591 / t8_extendsstaging/tw8591同上(batch a2a4afb6)同上
8300.00280.000000a8591 / t8_extendsstaging/tw8591同上(batch a2a4af83)同上
9300.00270.000000a8591 / t8_extendsstaging/tw8591同上(batch a2a4af83)同上
10300.00250.000000a8591 / t8_extendsstaging/tw8591同上(batch a2a4b016)同上

三、逐条分析与优化建议

#1/#2 t8_embeddings_cache 全表导出(1152s / 817s)

  1. 备份窗口错峰:该查询 01:30 开始、持续 19 分钟,与业务低峰重叠尚可,但建议限制 --single-transaction + 压缩流(| gzip / --compress)。
  2. vector 缓存数据本质可再生,可评估用逻辑导出(仅 key+expired)+ 过期重建策略,跳过大 JSON 列。
  3. 若需常驻查询,expired 列可加索引便于清理任务;对导出场景无收益。

#3 h8_telescope_entries 全表导出(314s)

#4 t1_daily_report 全表导出(311s,2933 万行)

  1. 该表为按日累积的统计明细,评估分区(RANGE by date)后备份可按分区增量。
  2. 备份流压缩;或改用 XtraBackup 物理备份,避免 SQL 层全表传输。

#5 # administrator command: Prepare(300.0038s)

#6~#10 INSERT INTO telescope_entries(各 ≈300.00s)

  1. 关闭/限流 staging 的 Laravel Telescope:调试组件不该在 staging 产生亿级行写入,TELESCOPE_ENABLED=false 或采样模式即可消除 #3/#5~#10 全部 7 条。
  2. 立即执行 telescope:prune 清理历史数据(2.31 亿 auto_increment 说明从未清理)。
  3. 备份任务改 --single-transaction 并与写入低峰错开,避免长读事务阻塞写入(或从 100-slave 等从库备份)。

四、风险提示

五、数据来源与生成时间