mysql慢查询使用详解

作者:hebedich 时间:2024-01-25 05:07:18 

1 慢查询定义
指mysql记录所有执行超过long_query_time参数设定的时间阈值的SQL语句。慢查询日志就是记录这些sql的日志。

2 开启慢查询日志
找到mysql配置文件my.cnf.在mysqld的下面添加


log-slow-queries = D:/MySQL/log/mysqld-slow-query.log  #日志存在的位置。(注意权限的问题,可以不用设置,系统会给一个缺省的文件host_name-slow.log)
long-query-time = 5   #SQL执行时间阈值,默认为10秒。
#log-long-format   #说log-long-format选项是用来设置日志的格式,它是以扩展方式记录有关事件。扩展方式可记录谁发出查询和什么时候发出查询的信息。可使我们更好地掌握客户端的操作情况。
#log-slow-admin-statements  #将慢管理语句例如OPTIMIZE TABLE、ANALYZE TABLE和ALTER TABLE记入慢查询日志。
log-queries-not-using-indexes #如果运行的SQL语句没有使用索引,则mysql数据库同样会将这条SQL语句记录到慢查询日志文件中。

配置完毕后重启mysql服务。

3 测试
为了方便 我只在my.cnf中配置了慢查询日志的路径.

mysql 版本为 5.1.73

关于 long_query_time :从mysql 5.1开始,long_query_time开始以微秒记录SQL语句运行时间,之前仅用秒为单位记录。这样可以更精确地记录SQL的运行时间,供DBA分析。

进入mysql.


mysql> show VARIABLES like "%slow%"; #查看慢查询日志相关的信息
mysql> set global long_query_time=0.01;  #将mysql位置的值改为 0.01
mysql> show variables like "long_query_time"; #查看是否生效
mysql> select sleep(2); #延迟2秒执行 注:这条sql执行完毕以后应该已经在慢查询的日志文件中产生相关的信息记录
mysql> show global status like '%slow%'; #查看慢查询语句的次数

在日志文件中可以看到已经记录了sql.

mysql慢查询使用详解

总结:

Windows下开启MySQL慢查询
MySQL在Windows系统中的配置文件一般是是my.ini找到[mysqld]下面加上
log-slow-queries = F:\MySQL\log\mysqlslowquery.log
long_query_time = 2

Linux下启用MySQL慢查询
MySQL在Windows系统中的配置文件一般是是my.cnf找到[mysqld]下面加上
log-slow-queries=/data/mysqldata/slowquery.log
long_query_time=2

注意
log-slow-queries = F:\MySQL\log\mysqlslowquery.log为慢查询日志存放的位置,一般这个目录要有MySQL的运行帐号的可写权限,一般都将这个目录设置为MySQL的数据存放目录;
long_query_time=2中的2表示查询超过两秒才记录;

标签:mysql,慢查询
0
投稿

猜你喜欢

  • Mysql查询最近一条记录的sql语句(优化篇)

    2024-01-17 02:33:57
  • Python如何利用pandas读取csv数据并绘图

    2022-08-26 22:05:25
  • MySQL不使用order by实现排名的三种思路总结

    2024-01-17 13:43:46
  • Python中ArcPy栅格裁剪栅格(批量对齐栅格图像范围并统一行数与列数)

    2021-02-19 21:12:48
  • pytorch 使用单个GPU与多个GPU进行训练与测试的方法

    2022-04-04 10:39:07
  • python实现固定尺寸图像拼接

    2021-12-16 20:27:01
  • *.HTC 文件的简单介绍

    2008-11-24 17:36:00
  • python中使用enumerate函数遍历元素实例

    2021-05-08 04:56:41
  • Python实现读取文件夹按数字排序功能

    2023-08-24 02:12:45
  • MySQL-tpch 测试工具简要手册

    2024-01-12 16:12:46
  • Python标准库pathlib操作目录和文件

    2021-08-18 02:24:57
  • Python自定义函数实现求两个数最大公约数、最小公倍数示例

    2023-04-11 20:28:21
  • Python Pygame实现可控制的烟花游戏

    2021-09-08 20:29:02
  • SqlServer服务中利用触发器对指定账户进行登录ip限制提升安全性操作

    2024-01-26 12:24:32
  • python高效过滤出文件夹下指定文件名结尾的文件实例

    2023-08-03 13:55:13
  • pytorch多GPU并行运算的实现

    2022-01-09 22:01:06
  • Linux(Redhat)安装python3.6虚拟环境(推荐)

    2022-06-08 23:34:13
  • 将MySQL的作为文件系统使用

    2011-12-14 18:34:26
  • Python+pyecharts绘制双动态曲线教程详解

    2023-03-04 09:19:48
  • Python字典和列表性能之间的比较

    2022-08-08 12:49:58
  • asp之家 网络编程 m.aspxhome.com