您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關MySQL的邏輯架構是怎樣的,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
第一層,服務層(為客戶端服務):為請求做連接處理,授權認證,安全等。
1. 每個連接的查詢都在一個進程中的線程完成。
2. 服務器負責緩存線程,所以服務層不需要為每個連接新建線程。
注:mysql5.5或者更新的版本提供了一個API,支持線程池(thread-pooling)插件,可以使用池中少量線程來服務大量的連接。 (類似于oracle中的共享連接方式)
第二層,核心層:查詢解析,分析,優化,緩存,提供內建函數;存儲過程,觸發器,視圖。
1.優化器不關心使用的是什么存儲引擎,但是存儲引擎對優化查詢有影響。
2.在解析查詢之前,服務器會“詢問”是否進行了查詢緩存(只能緩存SELECT語句和相應結果)。緩存過的直接返回結果,未緩存的就需要進行解析查詢,優化,重新執行返回結果。
3.解析查詢時會創建一個內部數據結構(解析樹),然后對其進行各種優化。
第三層,存儲引擎層,不光做存儲和提取數據,而且針對特殊數據引擎還要做事務處理。
1.服務器通過API與存儲引擎通信,接口屏蔽了不同存儲引擎之間的差異,使得上層查詢透明。
2.不同存儲引擎之間不會通信,只會簡單相應上層服務的請求。
看完上述內容,你們對MySQL的邏輯架構是怎樣的有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。