第二章 MySQL體系結(jié)構(gòu)和管理

1.MySQL C/S模型

Server(服務(wù)端): mysqld
Client(客戶端):
socket:僅本地連接使用
tcp/ip :應(yīng)用連接使用
TCP\IP方式(遠(yuǎn)程、本地):
mysql -uroot -p123 -h 10.0.0.51 -P3306
Socket方式(僅本地):
mysql -uroot -p123 -S /tmp/mysql.sock

2.實(shí)例

mysqld ----->master thread ------->干活的線程+育分配的內(nèi)存結(jié)構(gòu)
boss 經(jīng)理 員工 辦公室

3.mysqld的程序結(jié)構(gòu)

3.1MySQL的專用管理和操作命令SQL

DDL 數(shù)據(jù)定義語(yǔ)言
DCL 數(shù)據(jù)控制語(yǔ)音
DML 數(shù)據(jù)操作語(yǔ)言
DQL 數(shù)據(jù)查詢語(yǔ)言

3.2 SQL語(yǔ)句的執(zhí)行過(guò)程

select user,host from mysql.user;
(1) mysql -uroot -pxxx

3.2.1 連接層

(1)提供連接協(xié)議

sokcet
TCP\IP

(2)驗(yàn)證user password host port(端口號(hào))
(3)提供連接線程
show processlist;


測(cè)試

功能:接受SQL語(yǔ)句,返回結(jié)果

3.2.2 SQL層

(1)語(yǔ)法檢查和SQL_MODE檢查
(2) 語(yǔ)義檢查和權(quán)限檢查
(3) 解析預(yù)處理,生成解析樹(執(zhí)行計(jì)劃樹)
(4)優(yōu)化會(huì)根據(jù)自帶算法,評(píng)估最優(yōu)的方案(代價(jià)模型算法)
代價(jià):cpu io mem
(5) 選擇最優(yōu)的方案進(jìn)行執(zhí)行SQL
(6) 提供查詢緩存(默認(rèn)是沒(méi)有開啟的),會(huì)使用redis tair替代查詢緩存功能
(7) 提供日志記錄(日志管理章節(jié)):binlog默認(rèn)是沒(méi)開啟的。

3.2.3 存儲(chǔ)引擎層

相當(dāng)于文件系統(tǒng),將數(shù)據(jù)取出,再交給SQL層結(jié)構(gòu)化成表,返回給用戶。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容