MYSQL性能調優及架構設計學習筆記-基礎篇MYSQL架構組成

目錄mysql

小結sql

MYSQL物理文件組成數據庫

MYSQL系統架構安全

MYSQL自帶工具使用介紹架構

 

小結工具

本章主要從邏輯層與物理層兩個方面介紹了MYSQL軟件自己及數據存儲的架構,同時還包括了部分重要的客戶端工具的功能介紹。性能

經過對架構的瞭解,能夠對MYSQL有一個更爲宏觀的認識。優化

 

MYSQL物理文件組成spa

1.       日誌文件日誌

1)  錯誤日誌: Error Log

記錄MYSQL運行過程全部較爲嚴重的警告和錯誤信息,以及MYSQL每次啓動和關閉的詳細信息。

默認是關閉的,啓動是開啓 –log-error[=file_name]選項

2)  二進制日誌:Binary Log & Binary Log index

記錄MYSQL全部修改數據庫數據的Query,以二進制形式記錄在該日誌文件中(常說的binlog)。還包括每一條Query所執行的時間,所消耗的資源,以及相關的事務信息,因此binlog是事務安全。

啓動: --log-bin[=file_name]

3)  更新日誌:Update Log

MYSQL 5.0開始不在支持更新日誌

4)  查詢日誌:Query Log

記錄全部的Query,包括全部的select,體積比較大,開啓後對性能有較大影響,通常只在跟蹤某些特殊的Query性能問題時纔會短暫打開該功能。

開啓: -log[=file_name]

5)  慢查詢日誌:Slow query Log

記錄執行時間較長的Query,也就是常說的Slow Query

開啓:--log-slow-queries[=file_name]

6)  InonoDB在線Redo日誌: InonoDB redo Log

記錄InnoDB所作的全部物理變動和事務信息,經過Redo日誌和Undo信息,InonoDB保證了在任何狀況下的事務安全性。

2.       數據文件

1)        .frm文件

與表相關的元數據(meta)信息都存放在該文件中,不管是什麼存儲引擎,每一個表都有會有一個以表名命名的.frm文件。

2)        .MYD文件

MyISAM存儲引擎專用,存放MyISAM表數據。

3)        .MYI文件

MyISAM存儲引擎專用,存放MyISAM表索引相關信息。

4)        .ibd文件和ibdata文件

InnoDB存儲引擎專用,其中,獨享表空間存儲方式使用.ibd文件存放數據;共享表空間存儲方式使用ibdata文件存放。

3.       Replication相關文件

1)  master.info文件;   2relay logrelay log index 3relay-log.info文件

4.       其餘文件

1)  system config file 2pid文件;                         3Socket文件

MYSQL系統架構

2.2.1 邏輯模塊組成

2-1 MYSQL 架構示意簡圖

第一層:

SQL Layer,在MYSQL數據庫系統處理底層數據以前的全部工做都在這一層完成的,包括權限判斷,Query解析,執行計劃優化,Query Cache的處理等

第二層:

Storage Engine Layer,底層數據存取操做實現部分,由多種存儲引擎共同組成。

 

2.2.2 各模塊工做配合

2-2 MYSQL 模塊間的關係圖

                          

MYSQL 自帶工具使用介紹

1)  mysql

2)  mysqladmin

3)  mysqldump

4)  mysqlimport

5)  mysqlbinlog

主要功能是分析MYSQL所產生的二進制日誌。

6)  mysqlcheck

能夠檢查,修復,分析,優化MYSQL的表。

注:並非全部的存儲引擎都支持這4項功能,象InnoDB就不支持修復功能

7)  myisamchk

相似mysqlchek –c/-r,能夠檢查和修復MyISAM存儲引擎的表,可是隻針對MyISAM存儲引擎的索引文件有效

8)  myisampack

MyISAM表進行壓縮處理,以縮減佔用的存儲空間,通常用於歸檔備份的場景下,並且壓縮後的MyISAM表會變成只讀,不能進行任何修改操做。

9)  mysqlhotcopy

相關文章
相關標籤/搜索