如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,下面就教您在mysql查找效率慢的SQL语句的方法,供您参考学习。
启动Mysql时加参数--log-slow-queries来记录执行时间超过long_query_time秒的sql
MySQL 自带 slow log 的分析工具 mysqldumpslow。
slow log 是 MySQL 根据 SQL 语句的执行时间设定,写入的一个文件,用于分析执行较慢的语句。
只要在 my.cnf 文件中配置好:
log-slow-queries = [slow_query_log_filename]
即可记录超过默认的 10s 执行时间的 SQL 语句。
如果要修改默认设置,可以添加:
long_query_time = 5
设定为 5s 。
/usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-locking --port=3306 --socket=/var/run/mysqld/mysqld.sock --log-slow-queries=/var/log/mysql/slow.log
explain来了解SQL执行的状态。
explain select * from wp_posts\G;
explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。
使用方法,在select语句前加上explain就可以了:
如:explain select surname,first_name form a,b where a.id=b.id
以上就是在mysql查找效率慢的SQL语句的方法介绍。
【编辑推荐】
【责任编辑:段燃 TEL:(010)68476606】
点赞 0