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