mysql體系:mysql
解釋:sql
調用:windows
1.connectors:鏈接器 (遠程調用mysql,Native很經常使用的mysql遠程鏈接工具、其它是能夠調用mysql支持的一些語言和方法)緩存
mysql結構數據結構
2.Connection Pool:鏈接池(管理用戶鏈接、用戶名、密碼、權限校驗、線程處理等須要緩存的需求 )工具
Management Serveices & Utilities: 管理服務和工具,例如備份恢復、Mysql複製、集羣等 優化
SQL Interface: SQL接口:接受用戶的SQL命令,而且返回用戶須要查詢的結果。好比select from就是調用SQL Interface 。ui
3.Parser: 解析器,SQL命令傳遞到解析器的時候會被解析器驗證和解析。解析器是由Lex和YACC實現的,是一個很長的腳本, 主要功能: spa
a . 將SQL語句分解成數據結構,並將這個結構傳遞到後續步驟,之後SQL語句的傳遞和處理就是基於這個結構的 (解析SQL語句)線程
b. 若是在分解構成中遇到錯誤,那麼就說明這個sql語句是不合理的 (判斷SQL語句)
4.Optimizer: 查詢優化器:自帶優化模塊,在SQL語句執行前會進行一次優化
用一個例子就能夠理解: select uid,name from user where gender = 1; 他使用的是「選取-投影-聯接」策略進行查詢。
例如這條SQL語句,執行的時候會過濾出gender這個字段,而後經過uid和name的屬性投影,而不是將屬性所有取出之後再進行過濾
將這兩個查詢條件聯接起來生成最終查詢結果
5.Cache和Buffer(高速緩存區): 查詢緩存,若是查詢緩存有命中的查詢結果,查詢語句就能夠直接去查詢緩存中取數據。 緩存類型:表緩存,記錄緩存,key緩存,權限緩存等
6.Engine :存儲引擎,能夠理解爲數據存取和處理的方式,經常使用的爲MyISAM和InnoDB,Engine會單獨講解,
7.File system:我的理解是支持安裝mysql的文件系統,例如NTFS、ext4等,windows中的FAT系統不支持安裝mysql(未驗證)
8.File&log:記錄mysql的一些日誌,例如慢查詢日誌、操做日誌、錯誤日誌等