MySQL limit 分頁 優化網上有很多的優化方案,一些確實能夠提高幾倍乃至數百倍的性能優化。至於是哪些方案本文不進行描述了,搜索引擎一搜就出來了很多優秀的文章。
本文主要來進行思考那些limit 優化到底是如何優化的,從MySQL的執行計划來分析。
MySQL 執行計划 : EXPLAIN 關鍵字 eg: EXPLAIN SELECT * FROM salaries (explain是什么?)
查看反編結果: 命令 SHOW WARNINGS 觀察mysql 反編譯后的語句 (在早期版本中,使用show warings 需要提前在被分析的SQL語句前加上EXTENDED 關鍵字, 在現在的通用的版本中這個關鍵字已被默認加在執行語句前)
通過explain的執行計划查看 執行詳情,里面的type,keys,extra屬性 , 凡是limit 分頁慢的基本都是全表掃描,只要能不是全表掃描性能都能有很大的提升,limit 優化的方案中大多數都使用了索引(只不過很多人都不知道SQL使用了), 基本上limit 優化都使用了覆蓋索引(給大家留個疑問:覆蓋索引是什么?)