CentOS系統中MySQL日志文件的默認位置及查看方法
默認路徑:通常位于/var/log/mysql/error.log或/var/log/mysqld.log(取決于MySQL版本和配置)。
作用:記錄MySQL服務器啟動、關閉過程中的錯誤信息,以及運行時的關鍵錯誤(如權限問題、連接失敗等)。
查看命令:使用tail命令實時查看最新錯誤日志(需root權限):
sudo tail -f /var/log/mysql/error.log  # 或 /var/log/mysqld.log
若不確定錯誤日志路徑,可通過MySQL命令查詢:
mysql -u root -p -e "SHOW VARIABLES LIKE 'log_error';"
默認路徑:默認關閉,啟用后通常位于/var/log/mysql/query.log或/var/log/mysql/mysql.log。
作用:記錄所有客戶端發送到服務器的SQL查詢(包括SELECT、INSERT等),用于審計或排查查詢問題。
啟用與查看步驟:
/etc/my.cnf(或/etc/mysql/my.cnf),在[mysqld]段添加:general_log = 1
general_log_file = /var/log/mysql/mysql.log
sudo systemctl restart mysqld
sudo tail -f /var/log/mysql/mysql.log
默認路徑:默認關閉,啟用后通常位于/var/log/mysql/slow-query.log。
作用:記錄執行時間超過long_query_time閾值(默認10秒)的查詢,用于性能優化(如識別慢查詢)。
啟用與查看步驟:
/etc/my.cnf,在[mysqld]段添加:slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow-query.log
long_query_time = 2  # 設置慢查詢閾值為2秒(可根據需求調整)
sudo systemctl restart mysqld
sudo tail -f /var/log/mysql/slow-query.log
默認路徑:位于/var/lib/mysql/目錄下,文件名格式為hostname-bin.000001(hostname為服務器主機名)。
作用:記錄所有更改數據庫數據的SQL語句(如INSERT、UPDATE、DELETE),用于數據恢復、主從復制。
查看命令:使用mysqlbinlog工具解析二進制日志(需root權限):
sudo mysqlbinlog /var/lib/mysql/hostname-bin.000001
若需查看最新二進制日志文件名,可通過MySQL命令查詢:
mysql -u root -p -e "SHOW BINARY LOGS;"
logrotate)而異,建議通過SHOW VARIABLES LIKE 'log_%';命令確認當前配置。root用戶或具有SELECT權限的數據庫用戶)。logrotate工具),避免日志文件占用過多磁盤空間。