MYSQL 邏輯架構

思惟導圖web

MYSQL 邏輯架構

前言sql

》 Mysql並不是盡善盡美,但足夠靈活,能適應高要求環境,如如今網站管理CMS系統中大多數的web應用都是用到這個,。
》 Mysql在衆多平臺上運行良好,支持多種數據類型,但不支持對象類型(Mongodb支持)
》 Mysql的存儲引擎能夠基於表創建,以知足對數據存儲,性能,特徵及其餘特性的各類須要。緩存

架構邏輯視圖
MYSQL 邏輯架構安全

每一個虛線框爲一層,總共三層。
第一層,服務層(爲客戶端服務):爲請求作鏈接處理,受權認證,安全等。
第二層,核心層:查詢解析,分析,優化,緩存,提供內建函數;存儲過程,觸發器,視圖。
第三層,存儲引擎層,不光作存儲和提取數據,並且針對特殊數據引擎還要作事務處理。服務器

鏈接管理與安全性(第一層 服務層)markdown

處理流程
MYSQL 邏輯架構數據結構

Δ 每一個鏈接的查詢都在一個進程中的線程完成。
Δ 服務器負責緩存線程,因此服務層不須要爲每一個鏈接新建線程。架構

認證流程  ide

MYSQL 邏輯架構
優化與執行函數

MYSQL 邏輯架構

在解析查詢以前,服務器會「詢問」是否進行了查詢緩存(只能緩存SELECT語句和相應結果)。緩存過的直接返回結果,未緩存的就須要進行解析查詢,優化,從新執行返回結果。解析查詢時會建立一個內部數據結構(樹),而後對其進行各類優化。優化:重寫查詢,決定查詢的讀表順序,選擇需使用的索引。

相關文章
相關標籤/搜索