上一篇
场景还原:
凌晨3点,你的MySQL突然抽风,用户投诉页面疯狂报错,你顶着黑眼圈打开终端,却发现满屏的“Error 1064”像天书…别慌!学会看MySQL日志,你就能像老中医把脉一样,快速揪出数据库的“病灶”~
MySQL其实有4种核心日志,各司其职:
错误日志(Error Log) 🚨
Can't start server: Bind on TCP/IP port: Address already in use
查询日志(General Query Log) 📝
DROP TABLE
…) 慢查询日志(Slow Query Log) 🐢
long_query_time
(默认10秒)的SQL SELECT * FROM 百万级表
的同学,你看到这个日志脸红了吗? 二进制日志(Binary Log) 🔄
# 错误日志(Linux默认路径) cat /var/log/mysql/error.log # 慢查询日志(需先确认路径) sudo tail -f /var/lib/mysql/your-slow.log
💡 小技巧:用grep "ERROR" error.log
快速过滤错误
-- 查看错误日志位置 SHOW VARIABLES LIKE 'log_error'; -- 开启通用查询日志(慎用!会暴涨日志体积) SET GLOBAL general_log = 'ON'; -- 查看慢查询阈值(单位:秒) SHOW VARIABLES LIKE 'long_query_time';
logrotate
定期归档 查询日志可能记录密码明文,生产环境慎开
二进制日志(binlog)写频繁时,IO性能可能下降5%-10%
用pt-query-digest分析慢日志:
pt-query-digest /var/lib/mysql/slow.log > slow_report.txt
输出结果直接告诉你哪些SQL是“性能杀手”
监控日志报警:
搭配Prometheus+Grafana,出现[ERROR]
自动发短信到手机
MySQL日志就像数据库的“黑匣子”——平时觉得多余,出问题时却是救命稻草,建议至少开启错误日志+慢查询日志,遇到问题时你会回来感谢我的 😉
ℹ️ 本文操作基于MySQL 8.0,其他版本路径可能略有不同(2025年7月验证)
本文由 本飞珍 于2025-07-30发表在【云服务器提供商】,文中图片由(本飞珍)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/487869.html
发表评论