mysql查詢優化

2021-09-17 02:41:26 字數 692 閱讀 6591

mysql客戶端與服務端的通訊方式是「半雙工」;

mysql通訊特點和限制:

a)客戶端一點開始傳送訊息另一端要接收完整個訊息才能響應;

b)客戶端一旦開始接收資料沒法停下來傳送指令

檢視命令 show processlist

a) sleep 正在等待客戶端傳送資料

b)query 連線線程正在執行查詢

c)locked 執行緒正在等待鎖的釋放

d)sorting result 執行緒正在對結果進行排序

e) sending data 向客戶端返回資料

對於出現問題的連線可用過kill(id) 的方式進行連線的殺掉

工作原理:快取select的結果集和sql語句

a) 解析sql

b 預處理階段

c)查詢優化器找到最優執行計畫

總結:通過 explain + sql 來檢視執行計畫,分析sql來優化sql,比如說最左匹配原則,常用的列放在最左,使用離散性高的列作為索引.

執行計畫 - type

sql查詢優化中有乙個很重要的指標,結果值從好到壞依次是:

查詢優化(MySQL優化查詢)

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

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

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

MySQL優化 查詢優化

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