①通過客戶端/服務器通信協議與 MySQL 建立連接。
②查詢緩存,這是 MySQL 的一個可優化查詢的地方,如果開啟了 Query Cache 且在查詢緩存過程中查詢到完全相同的 SQL 語句,則將查詢結果直接返回給客戶端;如果沒有開啟Query Cache 或者沒有查詢到完全相同的 SQL 語句則會由解析器進行語法語義解析,並生成解析樹。
③預處理器生成新的解析樹。
④查詢優化器生成執行計划。
⑤查詢執行引擎執行 SQL 語句,此時查詢執行引擎會根據 SQL 語句中表的存儲引擎類型,以及對應的 API 接口與底層存儲引擎緩存或者物理文件的交互情況,得到查詢結果,由MySQL Server 過濾后將查詢結果緩存並返回給客戶端。若開啟了 Query Cache,這時也會將SQL 語句和結果完整地保存到 Query Cache 中,以后若有相同的 SQL 語句執行則直接返回結果。