【MySQL】Linux安裝和邏輯架構

linux下安裝mysql

mysql的存放位置 /var/lib/mysql/

mysql.server和配置文件存放位置 /usr/share/mysql

mysql的相關命令存放位置 /usr/bin

啓停相關腳本 /etc/init.d/mysql

配置文件存放位置 /etc/my.cnf

相關文件

log-bin是二進制日誌用於主從複製

log-error是錯誤日誌,默認是關閉的,記錄嚴重的警告和錯誤信息,每次啓動和關閉的詳細信息。

log是查詢日誌:默認關閉,記錄查詢的sql語句

數據文件

  • frm文件,存放表結構
  • myd文件,存放表數據
  • myi文件,存放表索引

MySQL邏輯架構

 

連接層:最上層是客戶端和連接服務,包含本地sock通信和大多數基於客戶端、服務端工具是實現的tcp/ip的通信。主要完成一些類似於連接處理、授權認證及相關的安全方案。在該層上引入了線程池的概念,爲通過認證安全接入的客戶端提供線程。同樣在該層上可以是實現基於SSL的安全連接。服務器也會爲安全接入的每個客戶端驗證它所具有的操作權限。

服務層:主要完成核心服務人物:SQL接口、緩存查詢、SQL分析和優化及部分內置函數的執行。所有跨存儲引擎功能也在這一層實現,如過程、函數等。在服務層會解析查詢並創建相應的內部解析樹,並完成優化,例如確定查詢表的順序,是否利用索引等,最後生成相應的執行操作。對於select語句還會查詢內部緩存,如果緩存足夠大,可以在大量讀操作環境中提升性能。

引擎層:存儲引擎負責MySQL的存儲和提取,服務器通過API和存儲引擎進行通信,不同的存儲引擎功能不同,可以根據需要選取。常用MyISAM和InnoDB。

存儲層:主要將數據存儲在運行於裸設備的文件系統上,並完成與存儲引擎的交互。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章