国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

MySQL架構(gòu)介紹

2023-07-06 21:53 作者:全家桶激活  | 我要投稿

??大家好,我是Java小旋風(fēng)!今天給大家分享一下Mysql的架構(gòu)。

和其它數(shù)據(jù)庫相比,MySQL有點(diǎn)與眾不同,它的架構(gòu)可以在多種不同場景中應(yīng)用并發(fā)揮良好作用。主要體現(xiàn)在存儲(chǔ)引擎的架構(gòu)上,插件式的存儲(chǔ)引擎架構(gòu)將查詢處理和其它的系統(tǒng)任務(wù)以及數(shù)據(jù)的存儲(chǔ)提取相分離。這種架構(gòu)可以根據(jù)業(yè)務(wù)的需求和實(shí)際需要選擇合適的存儲(chǔ)引擎。

圖片

1. 連接層

最上層是一些客戶端和連接服務(wù),包含本地socket通信和大多數(shù)基于客戶端/服務(wù)端工具實(shí)現(xiàn)的類似于tcp/ip的通信。主要完成一些類似于連接處理、授權(quán)認(rèn)證、及相關(guān)的安全方案。在該層上引入了線程池的概念,為通過認(rèn)證安全接入的客戶端提供線程。同樣在該層上可以實(shí)現(xiàn)基于SSL的安全鏈接。服務(wù)器也會(huì)為安全接入的每個(gè)客戶端驗(yàn)證它所具有的操作權(quán)限。

2. 服務(wù)層

第二層架構(gòu)主要完成大部分的核心服務(wù)功能, 包括查詢解析、分析、優(yōu)化、緩存、以及所有的內(nèi)置函數(shù),所有跨存儲(chǔ)引擎的功能也都在這一層實(shí)現(xiàn),包括觸發(fā)器、存儲(chǔ)過程、視圖等

3.引擎層

存儲(chǔ)引擎層,存儲(chǔ)引擎真正的負(fù)責(zé)了MySQL中數(shù)據(jù)的存儲(chǔ)和提取,服務(wù)器通過API與存儲(chǔ)引擎進(jìn)行通信。不同的存儲(chǔ)引擎具有的功能不同,這樣我們可以根據(jù)自己的實(shí)際需要進(jìn)行選取。

4.存儲(chǔ)層

數(shù)據(jù)存儲(chǔ)層,主要是將數(shù)據(jù)存儲(chǔ)在運(yùn)行于該設(shè)備的文件系統(tǒng)之上,并完成與存儲(chǔ)引擎的交互。

更符合程序員審美的MySQL服務(wù)器邏輯架構(gòu)圖

圖片

查詢說明

mysql的查詢流程大致是:

  1. mysql客戶端通過協(xié)議與mysql服務(wù)器建連接,發(fā)送查詢語句,先檢查查詢緩存,如果命中,直接返回結(jié)果,否則進(jìn)行語句解析

  2. 有一系列預(yù)處理,比如檢查語句是否寫正確了,然后是查詢優(yōu)化(比如是否使用索引掃描,如果是一個(gè)不可能的條件,則提前終止),生成查詢計(jì)劃,然后查詢引擎啟動(dòng),開始執(zhí)行查詢,從底層存儲(chǔ)引擎調(diào)用API獲取數(shù)據(jù),最后返回給客戶端。怎么存數(shù)據(jù)、怎么取數(shù)據(jù),都與存儲(chǔ)引擎有關(guān)。

  3. 然后,mysql默認(rèn)使用的BTREE索引,并且一個(gè)大方向是,無論怎么折騰sql,至少在目前來說,mysql最多只用到表中的一個(gè)索引。



本文使用 文章同步助手 同步

MySQL架構(gòu)介紹的評論 (共 條)

分享到微博請遵守國家法律
桂阳县| 镇远县| 黄龙县| 天水市| 疏附县| 彭州市| 和龙市| 营山县| 凉城县| 凤庆县| 扶风县| 繁昌县| 辽阳市| 若尔盖县| 金寨县| 桦南县| 裕民县| 加查县| 大庆市| 台北市| 泰来县| 大邑县| 平谷区| 黑龙江省| 攀枝花市| 大城县| 封开县| 建水县| 永康市| 西盟| 台东县| 合水县| 江山市| 鄯善县| 九寨沟县| 永州市| 杭锦后旗| 肥乡县| 若尔盖县| 张家口市| 聂拉木县|