MySQL--慢查询日志、日志分析工具mysqldumpslow

mysqldumpslow 常用参数:

复制代码
-s,是order的顺序

----- al 平均锁定时间

-----ar 平均返回记录时间

-----at 平均查询时间(默认)

-----c 计数

-----l 锁定时间

-----r 返回记录

-----t 查询时间

-t,是top n的意思,即为返回前面多少条的数据

-g,后边可以写一个正则匹配模式,大小写不敏感的

# 取出使用最多的10条慢查询
mysqldumpslow -s c -t 10 /data/mysql/bogon-slow.log
 
# 取出查询时间最慢的3条慢查询 
mysqldumpslow -s t -t 3 /data/mysql/bogon-slow.log
 
# 得到按照时间排序的前10条里面含有左连接的查询语句 
mysqldumpslow -s t -t 10 -g "left join" /data/mysql/bogon-slow.log
 
# 按照扫描行数最多的
mysqldumpslow -s r -t 10 -g 'left join' /data/mysql/bogon-slow.log

# 筛选出insert语句
mysqldumpslow -s r -t 10 -g 'insert' /data/mysql/bogon-slow.log

排查数据库插入操作

重点排查插入操作的激增原因,可以从以下几个方面着手:

a. 查看插入语句的执行日志
  • 检查 MySQL 的 查询日志 (如果开启了),尤其是 INSERT 语句的执行情况。通过分析哪些表或哪些业务操作频繁执行插入操作,可以帮助定位问题的根源。

  • 如果没有开启查询日志,可以临时启用:

    SET global general_log = 1;
    SET global log_output = 'TABLE'; -- 或者 'FILE'

然后查询执行日志:

复制代码
#没加时间段过滤
SELECT * FROM mysql.general_log WHERE command_type='Query' AND argument LIKE 'INSERT%';

#加具体时间段过滤
SELECT * FROM mysql.general_log WHERE (command_type = 'Query' AND argument LIKE 'INSERT%' AND event_time BETWEEN '2025-06-09 14:12:00' AND '2025-06-09 14:14:00');

general_log具体包含哪些字段:

复制代码
DESCRIBE mysql.general_log;

这将显示 mysql.general_log 表的所有列及其数据类型,帮助你了解每个字段的含义。通常,general_log 表包括以下一些常见字段:

  • event_time:记录查询的时间。

  • user_host:执行查询的用户和主机。

  • thread_id:执行查询的线程 ID。

  • server_id:服务器 ID。

  • command_type :执行的命令类型(如 QueryConnectQuit 等)。

  • argument:执行的 SQL 查询或命令的内容。

相关推荐
这个DBA有点耶11 小时前
NULL不是空——数据库里最反直觉的设计,90%新人踩过的坑
数据库·mysql·代码规范
这个DBA有点耶13 小时前
AI写的SQL跑崩了生产库,这锅谁背?
数据库·人工智能·程序员
镜舟科技13 小时前
Databricks 再提 LTAP,AI 时代的数据底座为何重回大一统叙事?
数据库·架构·agent
Databend14 小时前
从湖仓升级为 Agent 时代的数据控制面,Snowflake 和 Databricks 有哪些布局
大数据·数据库·agent
ClouGence17 小时前
SQL Server CDC 能放到 Always On 备库读吗?一文讲透原理与实践
数据库·sql server
先吃饱再说1 天前
存储的进化:从 MySQL 到浏览器缓存,数据到底住在哪?
数据库
Nturmoils1 天前
字段太多看不全,ksql 的展开模式和输出控制怎么用
数据库·后端
Databend2 天前
Agent 轨迹分析与归因的数据工程实践
大数据·数据库·agent
这个DBA有点耶2 天前
SQL改写进阶:标量子查询的“隐形代价”与消除实战
数据库·mysql·架构
smallyoung2 天前
数据库乐观锁深度解析:MySQL、PostgreSQL 实战 + Spring Boot 集成指南
数据库·mysql·postgresql