首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

Windows MySQL 日誌管理完整配置:錯誤、查詢、慢查詢、二進制日誌與自動清理

     編輯:MySQL 綜合教學

Windows MySQL 日誌管理完整配置:錯誤、查詢、慢查詢、二進制日誌與自動清理

開啟適當的日誌對排查故障、效能分析、資料恢復至關重要。本文說明如何在 Windows (my.ini) 啟用四大日誌、控制日誌大小與自動清理,Linux (my.cnf) 同理。

先檢查目前日誌狀態

SHOW VARIABLES LIKE 'log_%';

SHOW VARIABLES log_%

修改 my.ini 啟用日誌 (需在 [mysqld] 區段)

[mysqld]
# 錯誤日誌 (建議永久開啟)
log-error="D:/logs/mysql/mysql_error.log"

# 一般查詢日誌 (記錄所有 SQL,極度消耗 IO,**僅調試短時開啟**)
log="D:/logs/mysql/mysql_query.log"

# 二進制日誌 (主從複制、時間點恢復必備)
log-bin="D:/logs/mysql/mysql_binlog"
# binlog_format=ROW  (推薦 ROW 格式,5.7+ 預設)

# 慢查詢日誌 (效能分析核心)
slow-query-log=1
slow-query-log-file="D:/logs/mysql/mysql_slow.log"
long_query_time=5          # 超過 5 秒記錄
log-queries-not-using-indexes=1  # 未用索引也記錄 (可選)

# 日誌自動清理:保留 3 天 (5.7+ 支援)
expire_logs_days=3
# 二進制日誌單檔上限
max_binlog_size=100M

路徑注意: 使用正斜線 / 或雙反斜線 \\,**避免空格**,不要用 # 註釋同行配置。

重啟服務並驗證

net stop mysql
net start mysql
# 或 services.msc 重啟 MySQL 服務

SHOW VARIABLES LIKE 'log_%';

日誌已啟用

生成的日誌檔案

日誌內容範例

日誌類型用途對照表

日誌用途建議
Error Log啟動/關閉/異常/崩潰資訊永久開啟
General Query Log所有客戶端 SQL僅調試開啟,極耗 IO
Binary Log主從複制、PITR 恢復生產必開,ROW 格式
Slow Query Log超時/無索引查詢永久開啟,long_query_time=1-5s

日誌分析工具

  • mysqldumpslow:分析慢查詢日誌,統計高頻慢 SQL。
  • mysqlbinlog:解析二進制日誌,支援按位置/時間範圍導出 SQL。
  • Percona Toolkit pt-query-digest:專業級慢查詢分析報表。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved