前言: 上篇文章我們介紹了入門MySQL的基本概念,看完上篇文章,相信你應該瞭解MySQL的前世今生了吧。本篇文章將帶你從架構體系來學習MySQL。我認為學習MySQL架構體系應該是入門階段必須的,雖然可能看不太明白,暫時也用不到,但是我們心中要有這些概念,瞭解結構體系對於後續的學習是很有幫助的。 ...
前言:
上篇文章我們介紹了入門MySQL的基本概念,看完上篇文章,相信你應該瞭解MySQL的前世今生了吧。本篇文章將帶你從架構體系來學習MySQL。我認為學習MySQL架構體系應該是入門階段必須的,雖然可能看不太明白,暫時也用不到,但是我們心中要有這些概念,瞭解結構體系對於後續的學習是很有幫助的。
MySQL邏輯架構介紹
下圖展示了MySQL的邏輯架構:(圖片來源:林曉斌《MySQL實戰45講》)
MySQL的邏輯架構圖(來源:《MySQL實戰45講》)
MySQL的邏輯架構主要分為3層:
- 第一層:對客戶端的連接處理、安全認證、授權等,每個客戶端連接都會在服務端擁有一個線程,每個連接發起的查詢都會在對應的單獨線程中執行。
- 第二層:MySQL的核心服務功能層,包括查詢解析、分析、查詢緩存、內置函數、存儲過程、觸發器、視圖等,select操作會先檢查是否命中查詢緩存,命中則直接返回緩存數據,否則解析查詢並創建對應的解析樹。
- 第三層:存儲引擎,負責數據的存儲和提取,MySQL伺服器通過API與存儲引擎通信,屏蔽了各種引擎之間的差異,常見的存儲引擎有:InnoDB、MyISAM。
大概先寫這麼多吧,因為這周比較忙,寫的內容比較少,後續有時間多寫寫。本篇文章是在讀完林曉斌老師的《MySQL實戰》課程後所寫,在這裡也向大家推薦下這個課程,此課程由極客時間出品,是乾貨滿滿的專欄,看完絕對有收穫。大家可以先看下目錄,需要的同學可以掃描識別圖片中的二維碼購買哦!
識別下圖中的二維碼即可購買: