如何查看MySQL源码
寫文章主要是為了記錄我的學習筆記,內容是參考各位大神的,在此謝過了~
一、源碼下載:
MySQL :: Download MySQL Community Server
?
選擇需要的版本,點擊“Download”,進入新頁面后選擇“No thanks, just start my download.”,直接下載即可。下載后,解壓縮,即可出現代碼,基本結構如下:
?
mysql_dic
代碼的主要功能如下:
boost:這個版本是自帶Boost的庫相關文件的,放在此處,如果是其它的版本就沒有這個文件夾
client:客戶端相關的軟件和工具代碼
cmake:CMAKE相關的腳本命令文件
components:組件工具
Docs:文檔文件夾
doxyen_resources:doxyen工具相關資源
extra:引入的一些其它包,如網絡消息誰的SSL包以及一些小工具。
include:源碼用的相關的頭文件放置的文件夾,但不包括存儲引擎的頭文件。
libbinlogevents:解析Binlog的lib服務,5.7后提供。
libbinlogstandalone:脫機配置CMAKE
libmysql:可嵌入式的客戶端API
libservices:動態服務插件管理
man:幫助文檔
mysql-test:服務端mysqlid的測試工具。
mysys:MySql自己實現的數據結構和一些基本算法。如數組和鏈表等。
packaging:打包相關
plugin:插件管理文件夾,包括一些動態加入的插件。
router:集群路由
scripts:系統工具運行的腳本。
share:共享信息,err和字符集
source_downloads:
sql:服務端的主要代碼,包括main函數。
sql-common:服務端和客戶端通用的一些代碼。
storage:存儲引擎相關文件。
strings:字符串庫
support-files:.conf的示例文件和相關工具。
testclients:客戶框架測試。
unittest:單元測試,這個搞程序的都知道。
utilities:公用的一些文件,有ZLIB等
vio:虛擬網絡IO處理系統,不同平臺或不同協議的網絡通信API的二次封裝。
二、體系結構:
mysql_construct
其主要分為以下幾層:
1、連接管理層,包括連接池支持的各種組件
2、服務管理層,含管理服務和相關工具、接口、分析、優化等組件。
3、存儲引擎,含各種以插件提供的數據存儲引擎。
4、文件存儲層,含各種實際落到硬盤的物理文件。
相關資源:mysql源碼解讀——源碼介紹_fpcc的博客-CSDN博客_mysql源碼
?
?
總結
以上是生活随笔為你收集整理的如何查看MySQL源码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL源码调试入门
- 下一篇: mysql源码解读——事务管理