
一、日志文件
1、錯誤日志:Error Log
內容:MyQL Server 運行過程中所有較為嚴重的警告和錯誤信息,以及MySQL Server 每次啟動和關閉的詳細信息。
路徑:默認存放位置在數據目錄下
名稱:默認文件名以hostname.err 命名
修改:“--log-error[=file_name]”,修改其存放目錄和文件名
擴展:FLUSH LOGS 命令來告訴MySQL 備份舊日志文件并生成新的日志文件。備份文件名以“.old”結尾。
2、二進制日志:Binary Log & Binary Log Index
內容:MySQL 會將所有修改數據庫數據的query(query 語句、執行的時間、所消耗的資源,以及相關的事務信息) 以二進制形式記錄到日志文件中。
路徑:默認存放位置在數據目錄下
名稱:mysql-bin.******(*代表0~9 之間的某一個數字,來表示該日志的序號)
修改:“--log-bin[=file_name]”,修改其存放目錄和文件名
擴展:“--max_binlog_size”設置binlog 的最大存儲上限
“--binlog-do-db=db_name”對某個(db_name)數據庫記錄binlog
“--binlog-ignore-db=db_name”忽略某個(db_name)數據庫的binlog 記錄
注意:db_name 不是指query 語句更新的數據所在的數據庫,而是當前連接所處的數據庫
mysql-bin.index 文件(binary log index)的功能是記錄所有Binary Log 的絕對路徑,保證MySQL 各種線程能夠順利的根據它找到所有需要的Binary Log 文件。
3、更新日志:update log
從版本5.0 開始,MySQL 已經不再支持更新日志了。
4、查詢日志:query log
內容:記錄MySQL 中所有的query(包括所有的select,體積比較大,開啟后影響性能,慎用!)
路徑:默認存放位置在數據目錄下
名稱:默認文件名為hostname.log
修改:“--log[=fina_name]”,修改其存放目錄和文件名
擴展:一般只用于跟蹤某些特殊的sql 性能問題才會短暫打開該功能。
5、慢查詢日志:slow query log
內容:慢查詢日志中記錄的是執行時間較長的query
路徑:默認存放位置在數據目錄下
名稱:默認文件名為hostname-slow.log
修改:“--log-slow-queries[=file_name]”,修改其存放目錄和文件名
擴展:慢查詢日志采用的是簡單的文本格式,可以通過各種文本編輯器查看其中的內容。其中記錄了語句執行的時刻,執行所消耗的時間,執行用戶,連接主機等相關信息。
MySQL 還提供了專門用來分析滿查詢日志的工具程序mysqlslowdump,用來幫助數據庫管理人員解決可能存在的性能問題。
6、Innodb 的在線redo 日志:innodb redo log
內容:redo 日志中記錄了Innodb 所做的所有物理變更和事務信息,通過redo 日志和undo 信息,Innodb 保證了在任何情況下的事務安全性
路徑:默認存放位置在數據目錄下
名稱:ib_logfile******(*代表0~9 之間的某一個數字,來表示該日志的序號)
修改:通過innodb_log_group_home_dir 來更改設置日志的存放位置,通過innodb_log_files_in_group 設置日志的數量。
擴展:暫不提供
二、數據文件
1、“.frm”文件
與表相關的元數據(meta)信息都存放在“.frm”文件中,包括表結構的定義信息等(與表一對一存在)。
2、“.MYD”文件
“.MYD”文件是MyISAM 存儲引擎專用,存放MyISAM 表的數據(與表一對一存在)。
3、“.MYI”文件
“.MYI”文件也是專屬于MyISAM 存儲引擎的,主要存放MyISAM 表的索引相關信息(與表一對一存在)。
4、“.ibd”文件和ibdata 文件
這兩種文件都是存放Innodb 數據的文件,之所以有兩種文件來存放Innodb 的數據(包括索引),是因為Innodb 的數據存儲方式能夠通過配置來決定是使用共享表(ibdata文件)空間存放存儲數據,還是獨享表(.ibd文件,與表一對一存在)空間存放存儲數據。
三、Replication相關文件
1、master.info 文件
master.info 文件存在于Slave 端的數據目錄下,里面存放了該Slave 的Master 端的相關信息,包括Master 的主機地址,連接用戶,連接密碼,連接端口,當前日志位置,已經讀取到的日志位置等信息。
2、relay log 和relay log index
mysql-relay-bin.xxxxxn 文件用于存放Slave 端的I/O 線程從Master 端所讀取到的Binary Log 信息,然后由Slave 端的SQL 線程從該relay log 中讀取并解析相應的日志信息,轉化成Master 所執行的SQL 語句,然后在Slave 端應用。
mysql-relay-bin.index 文件的功能類似于mysql-bin.index ,同樣是記錄日志的存放位置的絕對路徑,只不過他所記錄的不是Binary Log,而是Relay Log。
3、relay-log.info 文件
類似于master.info,它存放通過Slave 的I/O 線程寫入到本地的relay log 的相關信息。供Slave 端的SQL 線程以及某些管理操作隨時能夠獲取當前復制的相關信息。
四、其他文件
1、system config file
MySQL 的系統配置文件一般都是“my.cnf”,Unix/Linux 下默認存放在"/etc"目錄下,Windows 環境一般存放在“c:/windows”目錄下面。
2、pid file
pid file 是mysqld 應用程序在Unix/Linux 環境下的一個進程文件,和許多其他Unix/Linux 服務端程序一樣,存放著自己的進程id。
3、socket file
socket 文件也是在Unix/Linux 環境下才有的,用戶在Unix/Linux 環境下客戶端連接可以不通過TCP/IP 網絡而直接使用Unix Socket 來連接MySQL。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com