以下是Linux下MySQL日志管理的最佳实践:
日志类型与配置
/var/log/mysql/error.log,可通过log_error参数自定义。slow_query_log并设置long_query_time,用于性能优化。log_bin参数配置路径,建议开启expire_logs_days自动清理过期日志。日志轮转与清理
logrotate工具按天/大小分割日志,保留最近7-30天文件并压缩,避免磁盘占满。/var/log/mysql/*.log {
daily rotate 7
compress
missingok
postrotate /etc/init.d/mysql reload
}
PURGE BINARY LOGS命令或脚本实现。性能与安全优化
general_log),避免影响性能。du命令或工具监控日志大小,设置阈值告警。分析与工具使用
pt-query-digest或mysqldumpslow工具定位低效SQL,优化索引或语句结构。mysqlbinlog工具解析,用于故障恢复或审计。参考来源: