MySQL高階1 Mysql架構

2021-10-14 01:45:51 字數 1169 閱讀 5645

安裝目錄:

/var/lib/mysql

mysql資料庫檔案的存放路徑

/usr/share/mysql

配置檔案目錄

/usr/bin

相關命令目錄

用於主從複製

預設是關閉的,記錄嚴重的錯誤資訊,每次啟動和關閉等詳細資訊

預設關閉,記錄查詢的sql語句,如果開啟會減低mysql的整體效能,因為記錄日誌也是需要消耗系統資源

windows下my.ini檔案

linux下/etc/my.cnf檔案

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

服務層主要完成大多數額核心服務功能,如sql介面,並完成快取的查詢,sql的分析和優化及部分內建函式的執行。所有跨儲存引擎的功能也在這一層實現,如過程、函式等。在該層,伺服器會解析查詢並建立相應的記憶體解析樹,並對其完成相應的優化如確定查詢表額順序,是否利用索引等,最後生成相應的執行操作。如果是select語句,伺服器還會查詢內部的快取。如果快取空間足夠大,這樣在解決大量讀操作的環境中能夠很好額提公升系統的效能。

引擎層真正的負責了mysql中資料額儲存和提取,伺服器通過api與儲存引擎進行通訊。不同額儲存引擎具有的功能不同,可以根據自己的實際需要進行選取

儲存層

主要是將資料儲存子執行於裸裝置的檔案系統上,並完成與儲存引擎的互動

show engines;

show variables like

'%storage_engine%'

;

對比項

myisam

innodb

主外來鍵不支援

支援事務

不支援支援

行表鎖表鎖,即使操作一條記錄也會鎖住整個表,不適合高併發操作

行鎖,操作時只鎖住一行,不對其他行有影響,適合高併發操作

快取只快取索引,不快取真實資料

不僅快取索引還快取真是資料,對記憶體要求較高,記憶體大小對效能有決定性影響

表空間小

大關注點

效能事務

預設安裝yy

1 Mysql架構分析

聯結器,例如jdbc。2.manageement services utilities 系統管理和控制工具。3.connection pool mysql連線池,接收請求,建立連線。4.sql inte ce sql介面 接受使用者命令,執行後續操作,並且返回sql的操作結果。5.parse 解析器...

mysql學習與提高1 mysql架構總覽

我們先下圖看看mysql整體邏輯架構 mysql s logical architecture 圖1第二層值得關注。這是mysql的核心部分。通常叫做 sql layer。在 mysql據庫系統處理底層資料之前的所有工作都是在這一層完成的,包括許可權判斷,sql解析,行計畫優化,query cach...

mysql優化(1) mysql事務

事務是mysql等關係型資料庫區別於nosql的重要方面 隨著發展nosql資料庫也開始有了事物的概念 是保證資料一致性的重要手段。本文將首先介紹mysql事務相關的基礎概念,然後介紹事務的acid特性,並分析其實現原理。事務由乙個或多個sql語句組成乙個整體,如果所有的語句執行成功那麼修改將會全部...