MySQL體系結構

2021-07-10 07:25:10 字數 1525 閱讀 1632

連線層:和客戶端互動 對應主機的使用者名稱密碼threadpool...

sql

層:sql解析 優化,查詢...

儲存層:記憶體資料的儲存,資料的互動,ndb

基於網路的集群...

1.connectors指的是不同語言中與sql的互動

2.management serveices & utilities: 系統管理和控制工具

3.connection pool: 連線池

管理緩衝使用者連線,執行緒處理等需要快取的需求(

mysql

目前不支援

connection pool

:用官方的

proxy

來優化連線)

4.sql inte***ce: sql介面 

接受使用者的sql命令,並且返回使用者需要查詢的結果。比如select from就是呼叫sql inte***ce

5.parser: 解析器

對sql

命令解析

yacc

這個語法解析器來解析

sql的

主要功能: a

)將sql語句分解成資料結構,並將這個結構傳遞到後續的步驟,以後sql語句的傳遞和處理就基於這個結構

b)如果在分解構成中遇到錯誤,那麼就說明這個sql語句是不合理的

6.optimizer: 查詢優化器,把

sql改寫重新優化,判斷索引執行計畫

sql語句在查詢之前會使用查詢優化器對查詢進行優化。他使用的是「選取-投影-聯接」策略進行查詢。

用乙個例子就可以理解: select name from user where id= 1;

這個select 查詢先根據where 語句進行選取,而不是先將表全部查詢出來以後再進行id過濾

這個select查詢先根據name進行屬性投影,而不是將屬性全部取出以後再進行過濾

將這兩個查詢條件聯接起來生成最終查詢結果

7.cache和buffer: 查詢快取。

如果查詢快取有命中的查詢結果,查詢語句就可以直接去查詢快取中取資料。

這個快取機制是由一系列小快取組成的。比如表快取,記錄快取,key快取,許可權快取等

8.engine :儲存引擎。

儲存引擎是mysql中具體的與檔案打交道的子系統。也是mysql最具有特色的乙個地方。

預設下mysql是使用myisam引擎,它查詢速度快,有較好的索引優化和資料壓縮技術。但是它不支援事務。

innodb支援事務,並且提供行級的鎖定,應用也相當廣泛。 

mysql也支援自己定製儲存引擎,甚至乙個庫中不同的表使用不同的儲存引擎,這些都是允許的。

mysql 體系結構 了解MySQL體系結構

mysql 資料庫體系結構圖 mysql 由以下幾部分組成 1 connectors 不同語言中與 sql 的互動 show variables like connection variable name value character set connection utf8 collation c...

簡述mysql體系結構 MySQL體系結構

一 mysql登入方式 一 tcp ip方式 遠端 本地 mysql uroot poldboy123 h 10.0.0.51 p3306 二 socket方式 mysql uroot poldboy123 s tmp mysql.sock 二 例項介紹 例項 mysqld後台守護程序 主線程 ma...

MySQL體系結構

了解mysql必須牢牢記住其體系結構圖,mysql是由sql介面,解析器,優化器,快取,儲存引擎組成的 1 connectors指的是不同語言中與sql的互動 2 management serveices utilities 系統管理和控制工具 3 connection pool 連線池。管理緩衝使...