mysql 调优 (慢查询,执行计划和索引)

柔情只为你懂 2021-12-10 05:39 354阅读 0赞

在程序中难免会遇到查询很慢,有时你知道你哪个SQL,

有时 你可能调用其他的api不知道SQL,那么你可以用mysql 的慢查询

再结合 EXPLAIN 的执行计划,看看SQL有没有走索引再优化。

1,MYSQL 慢查询默认是不支持,可以在mysql 客户端

  1. show variables like '%slow%'; 查看

2,修改mysql的启动配置文件 my.cnf 添加,然后重启数据库

slow_query_log=1 —启动慢查询
slow_query_log_file=/tmp/mysql_slow.log —慢查询日志
long_query_time=1 —查询超过多少算慢查询 单位为秒

20190715165717105.png

3,查看启动文件是否有效 slow_query_log ON 代表慢查询启动

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NocmVrMTE_size_16_color_FFFFFF_t_70

4,执行你的程序,或者在客户端执行语句,当SQL语句查询返回超过1秒,

在之前设置的/tmp/mysql_slow.log日志文件会记录超时的SQL和用时

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NocmVrMTE_size_16_color_FFFFFF_t_70 1

5,拿出SQL语句,去客户端用explain执行计划看看语句,

是否走了索引,是否可优化。

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NocmVrMTE_size_16_color_FFFFFF_t_70 2

发表评论

表情:
评论列表 (有 0 条评论,354人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MySQL索引SQL

    MySQL索引 MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免