MySQL 慢查询日志

本文介绍如何通过配置MySQL慢查询日志来监控数据库运行效率。包括开启慢查询日志、设置日志文件路径和记录时长等关键步骤。
MySQL 慢查询日志
随着数据量的不断增长,性能尤为重要,或许经过优化及好的解决方案,使你当前感觉不到性能问题的存在,但随着数据量的不断增长,
从百万到千万再到几亿,可能问题会随之而来,为了能更好的掌握数据库的运行效率,添加慢日志查询是很有必要的。
查看日志相关信息:

show variables like 'slow%'



show variables like 'long_query%'
set global slow_query_log='ON'          -- 开启慢查询日志 
set global slow_query_log_file='/opt/lampp/var/mysql/host-10-10-10-28-slow.log';  -- 设置慢查询日志文件


参数如下:
-slow_launch_time
如果创建线程的时间超过该秒数,服务器增加Slow_launch_threads状态变量。

-slow_query_log
是否记录慢查询。用long_query_time变量的值来确定“慢查询”。

-slow_query_log_file
慢日志文件路径

-long_query_time
慢日志执行时长(秒),超过设定的时间才会记日志
 
日志配制:修改my.ini文件为以下内容
#开启慢日志 1:开启 0:关闭
slow_query_log=1

#设置日志时长 单位(秒)
long_query_time = 2
 
测试慢日志记录信息:
- 查询总记录数

- collegets-slow.log日志信息(文件默认存放在datadir目录下)
C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqld, Version: 5.5.23-log (MySQL Community Server (GPL)). started with:
TCP Port: 3306, Named Pipe: (null)
Time                 Id Command    Argument
C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqld, Version: 5.5.23-log (MySQL Community Server (GPL)). started with:
TCP Port: 3306, Named Pipe: (null)
Time                 Id Command    Argument
# Time: 121205 16:09:31
# User@Host: root[root] @  [192.168.17.105]
# Query_time: 2.171875  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 2381725
SET timestamp=1354694971;
SELECT COUNT(*)
FROM usersession;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值