mysql查詢優化

2021-09-22 20:39:38 字數 1029 閱讀 7079

1、使用慢查詢日誌去發現慢查詢。

2. 使用執行計畫去判斷查詢是否正常執行。

3. 總是去測試你的查詢看看是否他們執行在最佳狀態下 –久而久之效能總會變化。

4. 避免在整個表上使用count(*),它可能鎖住整張表。

5. 使查詢保持一致以便後續相似的查詢可以使用查詢快取。

6. 在適當的情形下使用group by而不是distinct。

7. 在where, group by和order by子句中使用有索引的列。

8. 保持索引簡單,不在多個索引中包含同乙個列。

9. 有時候mysql會使用錯誤的索引,對於這種情況使用use index。

10. 檢查使用sql_mode=strict的問題。

11. 對於記錄數小於5的索引字段,在union的時候使用limit不是是用or.

12. 為了 避免在更新前select,使用insert on duplicate key或者insert ignore ,不要用update去實現。

13. 不要使用 max,使用索引欄位和order by子句。

14. 避免使用order by rand().

15. limit m,n實際上可以減緩查詢在某些情況下,有節制地使用。

16. 在where子句中使用union代替子查詢。

17. 對於updates(更新),使用 share mode(共享模式),以防止獨佔鎖。

18. 在重新啟動的mysql,記得來溫暖你的資料庫,以確保您的資料在記憶體和查詢速度快。

19. 使用drop table,create table delete from從表中刪除所有資料。

20. 最小化的資料在查詢你需要的資料,使用*消耗大量的時間。

21. 考慮持久連線,而不是多個連線,以減少開銷。

22. 基準查詢,包括使用伺服器上的負載,有時乙個簡單的查詢可以影響其他查詢。

23. 當負載增加您的伺服器上,使用show processlist檢視慢的和有問題的查詢。

24. 在開發環境中產生的映象資料中 測試的所有可疑的查詢。

查詢優化(MySQL優化查詢)

關聯查詢太多join 設計缺陷或不得已的需求 資料庫伺服器調優及各個引數設定不適當 緩衝 執行緒數等 慢查詢日誌 找出執行速度慢的sql語句 慢查詢的開啟並捕獲 explain 慢sql分析 show profile查詢sql在mysql伺服器裡面的執行細節和生命週期情況 sql資料庫伺服器的引數調...

mysql統計查詢優化 Mysql查詢優化

效能涉及的層面很多,但是在操作層面,主要有表結構設計優化 索引優化和查詢優化 查詢的生命週期大致可以分為,從客戶端 到服務端 在伺服器上解析 生成執行計畫 執行 返回結果給客戶端 sql執行流程 具體優化技巧 1.消除外連線 2.消除子查詢 盡量用join代替子查詢,雖說mysql查詢優化器會進行優...

MySQL優化 查詢優化

在每乙個消耗大量時間的查詢中,都能看到一些不必要的額外操作 某些操作被額外地重複了很多次 某些操作執行得太慢等。優化查詢的目的就是減少和消除這些操作所花費的時間。查詢效能低下最基本的原因是訪問的資料太多。所以需要考慮是否向資料庫請求了不需要的資料 1 多表關聯時,或獲取單錶資料時,盡量避免不加思考地...