文件

簡(jiǎn)介

本文主要講解Mysql主要的文件,分為Mysql Server相關(guān)文件和InnoDB存儲(chǔ)引擎相關(guān)文件。

Mysql Server相關(guān)文件

配置文件

定義mysql全局配置信息,例如端口定義port=3306。在linux下,一般放在/etc/my.cnf,/etc/mysql/my.cnf(可以通過(guò)mysql--help | grep my.cnf查看)。

日志文件

用來(lái)記錄某些請(qǐng)求/響應(yīng)信息的文件,主要分為:

  • 錯(cuò)誤日志:對(duì)mysql的啟動(dòng)、運(yùn)行、關(guān)閉過(guò)程進(jìn)行了記錄。該文件不僅記錄了所有的錯(cuò)誤信息,還記錄一些告警信息或者正確的信息,可以通過(guò)show variables like '%log_error%';查看錯(cuò)誤日志的存放路徑,默認(rèn)命名主機(jī)名.err。
  • 慢查詢?nèi)罩荆嚎梢远ㄎ豢赡艽嬖趩?wèn)題的SQL語(yǔ)句,從而進(jìn)行SQL語(yǔ)句層面的優(yōu)化。
    • 主要用來(lái)記錄查詢時(shí)間>long_query_time(默認(rèn)10秒)的SQL。
    • slow_query_log=ON開(kāi)啟/關(guān)閉慢查詢?nèi)罩?,默認(rèn)是開(kāi)啟的。
    • 可以通過(guò)show variables like '%slow_query_log_file%';查看慢查詢?nèi)罩敬娣盼恢?,接著通過(guò)mysqldumpslow /data/mysql/mysql-slow.log查看詳細(xì)信息,也可以通過(guò)表來(lái)查看select * from mysql.slow_log;。
    • 另外還有一個(gè)重要的配置參數(shù)log-queries-not-using-indexes:未使用索引的查詢也被記錄到慢查詢?nèi)罩局校蛇x項(xiàng))。
  • 查詢?nèi)罩荆河涗浰械恼?qǐng)求響應(yīng)信息,默認(rèn)命名主機(jī)名.log
  • 二進(jìn)制日志:記錄了對(duì)mysql執(zhí)行更改的操作(詳細(xì)信息參考這篇文章:Mysql——binlog)。主要有以下幾個(gè)作用:
    • 恢復(fù):可以通過(guò)point in time進(jìn)行某些數(shù)據(jù)的恢復(fù);
    • 復(fù)制:mysql主從復(fù)制是基于二進(jìn)制日志復(fù)制實(shí)現(xiàn)實(shí)時(shí)同步的;
    • 審計(jì):用戶可以通過(guò)二進(jìn)制日志進(jìn)行審計(jì),判斷是否有注入攻擊。

表結(jié)構(gòu)文件

用來(lái)存放mysql表結(jié)構(gòu)定義,文件后綴.frm

socket文件

當(dāng)用UNIX域套接字方式進(jìn)行連接時(shí)需要的文件;可以通過(guò)show variables like 'socket';查看,一般放到/tmp/mysql.sock;

pid文件

Mysql實(shí)例的進(jìn)程文件;可以通過(guò)show variables like 'pid_file';查看。

InnoDB存儲(chǔ)引擎相關(guān)文件

  • 表空間文件
  • 重做日志文件

詳細(xì)信息可以參考這篇文章Mysql——InnoDB存儲(chǔ)引擎架構(gòu)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容