首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 日誌管理全攻略:錯誤日誌、Binlog、查詢日誌、慢查詢日誌查看與清理

     編輯:MySQL 資料庫相關知識

1. 錯誤日誌

  • 記錄啟動/關閉、嚴重錯誤。
  • 指定:--log-error[=file_name],預設 host_name.err 於資料目錄。

2. Binlog(二進制日誌)

  • 記錄所有變更語句(含潛在變更如無匹配的 DELETE)。
  • 啟動:--log-bin[=file_name],預設 host_name-bin.#####。
  • 查看:mysqlbinlog log_file。
  • 清理:
    • RESET MASTER; 刪除所有,編號歸零。
    • PURGE MASTER LOGS TO 'mysql-bin.010'; 刪除指定檔之前。
    • PURGE MASTER LOGS BEFORE '2024-01-01 00:00:00'; 刪除指定時間之前。
  • 過濾:
    • --binlog-do-db=db_name 僅記錄指定庫。
    • --binlog-ignore-db=db_name 忽略指定庫。
  • 安全強化:
    • sync_binlog=N 每 N 次寫入 fsync。
    • --innodb-safe-binlog(舊版)配合事務安全。
    • SET SQL_LOG_BIN=0 當前會話不記錄(需 SUPER 權限)。

3. 一般查詢日誌

  • 記錄所有客戶端語句(含純查詢)。
  • 啟動:--log[=file_name] 或 -l,預設 host_name.log。

4. 慢查詢日誌

  • 記錄執行時間 > long_query_time 秒的 SQL(不含鎖等待)。
  • 啟動:--log-slow-queries[=file_name],預設 host_name-slow.log。
  • 分析神器:mysqldumpslow slow_log_file 聚合統計。
  • 5.1+ --log-slow-admin-statements 記錄管理語句。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved