sql优化相关

一般对于一个成熟已经上线的项目来说,网站长时间的运营会发现数据越跑越慢,原因可能是数据量越来越大以及sql书写不优造成的。

然而我们要做的就是首先定位那些sql跑的慢,

通过命令查看慢sql的日志

(1) 查看慢SQL日志是否启用

mysql> show variables like 'log_slow_queries'; 
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| log_slow_queries | ON    |
+------------------+-------+
1 row in set (0.00 sec)

(2) 查看执行慢于多少秒的SQL会记录到日志文件中
mysql> show variables like 'long_query_time';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| long_query_time | 1     |   
+-----------------+-------+
1 row in set (0.00 sec)

这里value=1, 表示1秒

2. 配置my.ini文件(inux下文件名为my.cnf), 查找到[mysqld]区段,增加日志的配置,如下示例:
[mysqld]
log="C:/temp/mysql.log"
log_slow_queries="C:/temp/mysql_slow.log"
long_query_time=1
 
log指示日志文件存放目录;
log_slow_queries指示记录执行时间长的sql日志目录;
long_query_time指示多长时间算是执行时间长,单位s。

                                                                                             ---下班了,回去在整理。

原文地址:https://www.cnblogs.com/caoql/p/8709911.html