以 MySQL 为例
如何定位并优化慢查询 Sql?
联合索引的最左匹配原则的成因?
索引是建立得越多越好吗?
如何定位并优化慢查询 Sql?
根据慢日志定位慢查询 sql
使用 explain 等工具分析 sql
修改 sql 或者尽量让 sql 走索引
查看 MySQL 变量
SHOW VARIABLES LIKE '%quer%'
显示慢查询的数量
SHOW STATUS LIKE '%slow_queries%'
打开慢查询日志
SET GLOBAL slow_query_log = ON;
设置慢查询时间为 1 秒.
SET GLOBAL long_query_time = 1
然后重新连接才能生效
慢查询实践
如下面的查询语句, 查过了 1 秒
然后打开慢查询日志
可以发现执行了 6 秒, 实际上就是 6 秒.
然后使用 explain
explain 的关键字段
当 type 为 index 或者 All 时, 这条 sql 可能就是慢查询
来源: http://www.bubuko.com/infodetail-3394500.html