[mysql]留個紀錄好辦事 – Mysql Log (日誌紀錄)

參考網址:https://ithelp.ithome.com.tw/m/articles/10263180
 

查詢日誌- general log
注意點: 因為執行的所有行為操作都會紀錄到日誌中,log累積量會佔用很大的disk空間,請求量一多會產生不小的系統開銷影響效能! 所以在環境上通常不會啟用此日誌。

相關配置: my.cnf設定檔(/etc/mysql/my.cnf)

[mysqld]

#general log是否開啟(default:0禁用 / 1啟用)
general_log = 1
#查詢日誌路徑&檔名
general_log_file = /mnt/mysql_data/mysql/general.log
#指定日誌輸出目的地(default:FILE=記錄到general.log / TABLE=紀錄到mysql.general_log表)
log-output=TABLE

 

慢查詢日誌- slow log
注意點: 在開發的時候寫的SQL指令就算有測過執行時間,但如果遇到資料量不足的問題,雖然看起來沒問題但上線後資料量一大所造成的影響,執行秒數差異會越來越明顯。可能是表結構索引關係設計上又或者是SQL語法本身問題,透過slowlog能找出這些語法發現問題並做優化。
 

相關配置: my.cnf設定檔(/etc/mysql/my.cnf)

[mysqld]

#slow log是否開啟(1啟用/0禁用)
slow-query-log = 1
#慢查詢日誌路徑&檔名
slow_query_log_file=/mnt/mysql_data/mysql/slow.log
#執行超過x秒就紀錄 (EX: 1s)
long_query_time = 1

二进制日志

记录了所有对数据库执行更改的操作。不包括Select 和show等操作命令,想要查看只能通过查询日志。

 

本篇發表於 程式設計。將永久鏈結加入書籤。