mysql日志管理
2015-12-26 01:25:08
18684
一、日志類型:
MySQL有幾個不同的日志文件,可以幫助你找出mysqld內(nèi)部發(fā)生的事情:
日志文件 記入文件中的信息類型
錯誤日志 記錄啟動、運行或停止時出現(xiàn)的問題。
查詢?nèi)罩?記錄建立的客戶端連接和執(zhí)行的語句。
二進制日志 記錄所有更改數(shù)據(jù)的語句。主要用于復(fù)制和即時點恢復(fù)。
慢日志 記錄所有執(zhí)行時間超過long_query_time秒的所有查詢或不使用索引的查詢。
事務(wù)日志 記錄InnoDB等支持事務(wù)的存儲引擎執(zhí)行事務(wù)時產(chǎn)生的日志。
默認情況下,所有日志創(chuàng)建于mysqld數(shù)據(jù)目錄中。通過刷新日志,你可以強制
mysqld來關(guān)閉和重新打開日志文件(或者在某些情況下切換到一個新的日志)。當你執(zhí)行一個FLUSH LOGS語句或執(zhí)行mysqladmin flush-logs或mysqladmin refresh時,出現(xiàn)日志刷新。如果你正使用MySQL復(fù)制功能,從復(fù)制服務(wù)器將維護更多日志文件,被稱為接替日志。
二、錯誤日志:
1.錯誤日志主要記錄如下幾種日志:
服務(wù)器啟動和關(guān)閉過程中的信息
服務(wù)器運行過程中的錯誤信息
事件調(diào)度器運行一個時間是產(chǎn)生的信息
在從服務(wù)器上啟動從服務(wù)器進程是產(chǎn)生的信息
2.錯誤日志定義:
可以用--log-error[=file_name]選項來指定mysqld保存錯誤日志文件的位置。如果沒有給定file_name值,mysqld使用錯誤日志名host_name.err 并在數(shù)據(jù)目錄中寫入日志文件。如果你執(zhí)行FLUSH LOGS,錯誤日志用-old重新命名后綴并且mysqld創(chuàng)建一個新的空日志文件。(如果未給出--log-error選項,則不會重新命名)。
查看當前錯誤日志配置:
查看當前錯誤日志配置:
三、通用查詢?nèi)罩?
1.啟動開關(guān):general_log={ON|OFF}
2.日志文件變量:general_log_file[=/PATH/TO/file]
3.全局日志開關(guān):log={ON|OFF} 該開關(guān)打開后,所有日志都會被啟用
4.記錄類型:log_output={TABLE|FILE|NONE}
因此,要啟用通用查詢?nèi)罩?,需要至少配?span>general_log=ON,log_output={TABLE|FILE}。而general_log_file如果沒有指定,默認名是host_name.log。
看看上述幾個值的默認配置: