11、如何开启慢日志查询?
1、为什么要开启慢日志查询?
开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。
2、参数说明
slow_query_log 慢查询开启状态
slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录)
long_query_time 查询超过多少秒才记录
3、设置步骤
①.查看慢查询相关参数
mysql> show variables like 'slow_query%'; +---------------------------+----------------------------------+ | Variable_name | Value | +---------------------------+----------------------------------+ | slow_query_log | OFF | | slow_query_log_file | /mysql/data/localhost-slow.log | +---------------------------+----------------------------------+ mysql> show variables like 'long_query_time'; +-----------------+-----------+ | Variable_name | Value | +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+
②.设置方法
将 slow_query_log 全局变量设置为“ON”状态
mysql> set global slow_query_log='ON';
设置慢查询日志存放的位置
mysql> set global slow_query_log_file='/var/lib/mysql/test-10-226-slow.log';
查询超过1秒就记录
mysql> set global long_query_time=1;
经过这些操作,则慢日志查询也就开启了!但这种方法只是临时生效,mysql重启后就会失效
所以我们不能让他失效,所以需进行如下操作
编辑配置文件/etc/my.cnf加入如下内容
[mysqld] slow_query_log = ON slow_query_log_file = /var/lib/mysql/test-10-226-slow.log long_query_time = 1
修改配置后重启
mysql
systemctl restart mysqld mysql -uroot -p
使用下面命令验证
show variables like 'slow_query%';
mysql永久开启了漫查询日志功能