Mysql查詢語句執行流程


 

官方的圖

 


 

 

 

自行畫的圖

 

 


 

 

 

 

 

 

 

第一步:

  連接器  首先我們要連接上這個數據庫,連接器負責建立連接,判斷認證是否通過等。
第二部:

  查詢緩存 mysql拿到請求后首先判斷請求的查詢語句是否有緩存,是否命中緩存,但是不推薦使用mysql的緩存,官方也不推薦,因為只要有一條數據更新表的緩存就會被刪除,降低效率
第三步:

  分析器  沒有命中緩存的話就要開始執行語句了,首先對sql語句進行解析,  首先做  “詞法解析”,分析出sql語句的關鍵詞等字符串代表什么含義,然后通過”語法分析“判斷這個sql是否滿足語法標准。
第四步:

  優化器 優化sql執行的速度,比如執行的索引、表連接(join)的執行順序,然后決定出最快的執行方案
第五步:

  執行器 判斷用戶對這個表是否有權限,有的話就會根據這個表的引擎執行通過優化器給出的最優執行方案去執行,然后返回結果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM