叫我大侠
人可以失败,但不可以被击败
MySQL开启慢查询日志-调优、监控必备

通过开启MySQL慢查询日志,可以监控到当前MySQL慢查询日志SQL,并可以针对SQL进行优化,提高SQL效率,进儿提升网站性能,服务器性能等。

介绍

1. 查看慢查询日志是否开启:

show variables like "%slow_query_log%";
mysql> show variables like "%slow_query_log%";
+---------------------------+-----------------------------------+
| Variable_name             | Value                             |
+---------------------------+-----------------------------------+
| slow_query_log            | OFF                               |
| slow_query_log_file       | /var/lib/mysql/localhost-slow.log |
+---------------------------+-----------------------------------+
  • slow_query_log: 慢查询开关
  • slow_query_log_file: 慢查询sql 记录的文件地址


2. 查看慢查询日志设置的时间

show variables like "%long_query_time%";
mysql> show variables like "%long_query_time%";
+--------------------------------------------------------+-----------+
| Variable_name                                          | Value     |
+--------------------------------------------------------+-----------+
| long_query_time                                        | 10.000000 |
+--------------------------------------------------------+-----------+k
  • long_query_time: 慢查询超过此时间将会记录SQL,默认10s


使用

1.mysql运行状态生效

直接设置mysql运行态,mysql重启会失效

set global slow_query_log='ON'; 
set global long_query_time=5;
mysql> set global slow_query_log='ON'; 
Query OK, 0 rows affected (0.01 sec)   // 开启慢查询

mysql> set global long_query_time=5;
Query OK, 0 rows affected (0.00 sec)    // 5s算作慢查询

2.mysql永久生效

修改mysql配置文件,默认/etc/my.ini

vim /etc/my.cnf
[mysqld]
# 这里设置开始
show_query_log=1
long_query_time=5
slow_query_log_file=/var/lib/mysql/localhost-slow.log
<< 上一篇 python ssh实现远程自动化执行命令 扩展系统盘 - 增加系统磁盘大小 下一篇 >>
文章标签
随意 | Created At 2014 By William Clinton | 蜀ICP备14002619号-4 |