mysql邏輯架構

2021-09-05 10:11:15 字數 909 閱讀 6039

與其他資料庫相比,mysql 資料庫有自己獨特的地方,它的架構可以在不同的場景中應用並發揮良好的作用。主要體現在儲存引擎的架構上,外掛程式式的儲存引擎架構將查詢處理和其他的系統任務以及資料的儲存提取相分離。這種架構的最大優點是可以根據業務和實際需求選擇適當的儲存引擎。下面是mysql 的邏輯架構圖:

一:連線層:

最上層是客戶端和連線服務,包括本地sock 通訊和大多數基於客戶端/服務端工具實現的類似於tcp/ip 的通訊。主要完成一些類似於鏈結處理、授權認證、以及相關的安全方案。在該層上引入了連線池的概念,為通過認證安全接入的客戶端提供執行緒。同樣在該層上可以實現基於ssl 的安全鏈結。伺服器也會為安全接入的每個客戶端驗證它所具有的操作許可權。

二:服務層:

第二層架構主要完成大多數的核心服務功能,如sql 介面,並完成快取的查詢,sql 的分析和優化及部分內建函式的執行。所有跨儲存引擎的功能也在這一層上實現,如過程,函式等。在該層,伺服器會解析並建立相應的內部解析樹,並完成相應的優化如確定查詢表的順序,是否利用索引等,最後生成對應的執行操作。如果是select 語句,伺服器還會查詢內部的快取。如果快取空間足夠大,這樣在解決大量讀操作的環境中能夠很好的提公升系統的效能。

三:引擎層:

在儲存引擎層,儲存引擎真正的負責了mysql 中資料的儲存和提取,伺服器通過api 與儲存引擎進行通訊。不同的儲存引擎具有不同的功能,這樣使得我們可以根據自己的實際需求選取合適的儲存引擎。

四:儲存層:

資料儲存層,主要將資料儲存在執行於裸裝置上的檔案系統上,並完成與儲存引擎的互動。

MySQL邏輯架構

庖丁解牛之前應該也是對牛的骨架有乙個全面的認知。同樣學習資料庫也從mysql的邏輯架構開始吧。了解mysql邏輯架構有助於深入理解mysql伺服器。最上層的服務並不是mysql所獨有的,大多數基於網路的客戶端 伺服器的工具或者服務都有類似的架構。比如連線處理 授權認證 安全等等。第二層,mysql大...

MySQL邏輯架構

mysql伺服器邏輯架構圖如下 每個虛線框為一層,總共三層。最上層的服務不是mysql特有的,大多數基於網路的客戶端 伺服器的工具或者服務都有類似的架構,為請求做連線處理,授權認證,安全等。第二層架構是大多數mysql的核心服務功能所在層,包括查詢解析,分析,優化,快取以及所有的內建函式,所有跨儲存...

MySQL 邏輯架構

對mysql架構的基本情況掌握了,才能深入學習高階mysql的一些知識。1.連線層 最上層是一些客戶端和連線服務,包含 本地sock通訊和大多數基於客戶端 服務端工具實現的類似於tcp ip的通訊。主要完成一些類似於連線處理 授權認證 及相關的安全方案。在該層上引入了執行緒池的概念,為通過認證安全接...