MySQL有以下幾種日志:
錯誤日志: -log-err
查詢日志: -log
慢查詢日志: -log-slow-queries
更新日志: -log-update
二進制日志: -log-bin
默認情況下,所有日志創建于mysqld數據目錄中。通過刷新日志,你可以強制 mysqld來關閉和重新打開日志文件(或者在某些情況下切換到一個新的日志)。當你執行一個FLUSH LOGS語句或執行mysqladmin flush-logs或mysqladmin refresh時,出現日志刷新
1. 錯誤日志
用--log- error[=file_name]選項來指定mysqld保存錯誤日志文件的位置。如果沒有給定file_name值,mysqld使用錯誤日志名 host_name.err 并在數據目錄中寫入日志文件。如果你執行FLUSH LOGS,錯誤日志用-old重新命名后綴并且mysqld創建一個新的空日志文件。(如果未給出--log-error選項,則不會重新命名)。
如果不指定--log-error,或者(在Windows中)如果你使用--console選項,錯誤被寫入標準錯誤輸出stderr。通常標準輸出為你的終端。
2. 通用查詢日志                                                            
用--log[=file_name]或-l [file_name]選項啟動它。如果沒有給定file_name的值,默認名是host_name.log。
3. 慢速查詢日志                                                            
用--log-slow-queries[=file_name]選項啟動時,mysqld 寫一個包含所有執行時間超過long_query_time秒的SQL語句的日志文件.如果沒有給出file_name值,默認未主機名,后綴為 -slow.log。如果給出了文件名,但不是絕對路徑名,文件則寫入數據目錄。
3. 更新日志                                                              
用--log-update[=file_name]選項啟動,不推薦使用.
是否啟用了日志
mysql>show variables like 'log_%';
怎樣知道當前的日志
mysql> show master status;
顯示二進制日志數目
mysql> show master logs;
看二進制日志文件用mysqlbinlog
shell>mysqlbinlog mail-bin.000001
或者shell>mysqlbinlog mail-bin.000001 | tail            
新聞熱點
疑難解答