无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

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

MySQL架構(gòu)介紹

2023-07-02 22:33 作者:小年輕在奮斗  | 我要投稿

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ǔ)引擎。

image.png

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)圖

image.png

查詢說明

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è)索引。

轉(zhuǎn)載:https://mp.weixin.qq.com/s/RiKqlUWSBtdGgAzHqpLXHQ

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

文章知識(shí)點(diǎn)與官方知識(shí)檔案匹配,可進(jìn)一步學(xué)習(xí)相關(guān)知識(shí)

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


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

分享到微博請遵守國家法律
泸溪县| 贵州省| 麦盖提县| 瑞昌市| 湛江市| 额济纳旗| 沛县| 肃北| 贞丰县| 两当县| 巧家县| 越西县| 襄城县| 淮安市| 文化| 上思县| 平阴县| 托克托县| 屯门区| 沐川县| 芜湖市| 斗六市| 来宾市| 辉南县| 高陵县| 通许县| 房产| 霸州市| 历史| 长海县| 共和县| 福安市| 泾阳县| 望奎县| 丽江市| 邢台县| 孝感市| 临沭县| 岑巩县| 三江| 安达市|