MySQL SQL語句查詢執行過程的四個階段介紹

chenfeng發表於2016-09-13
1.語法分析階段:將SQL查詢語句經詞法和語法分析後變換為一顆查詢樹st_select_lex傳給最佳化器,並對SQL表達的語義進行檢查。

2.生成邏輯查詢執行計劃階段:最佳化器在查詢樹中遍歷每個關係,確定關係是否是常量表,為每個關係查詢可用的索引,運用關係
代數原理和啟發式規則進行邏輯上的查詢最佳化(如消除子查詢,消除外連線等)。

3.生成物理查詢執行計劃階段:最佳化器對每個連線的表進行排序,然後再求解多表連線最優路徑,對於每個關係儘量利用索引計算其
代價,找出代價最小的路徑後儲存到JOIN類的best_positions。

4.執行查詢執行計劃階段:把查詢執行計劃傳到執行器進行執行。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15498/viewspace-2124894/,如需轉載,請註明出處,否則將追究法律責任。

相關文章