首先确认MySQL错误日志路径:SHOW VARIABLES LIKE 'log_error'; 使用sudo tail -f /var/log/mysql/error.log查看,可结合grep过滤ERROR等信息;再检查慢查询日志是否开启:SHOW VARIABLES LIKE 'slow_query_log'; 若未开启则执行SET GLOBAL slow_query_log='ON'; 设置阈值SET GLOBAL long_query_time=1; 查看慢查询日志路径:SHOW VARIABLES LIKE 'slow_query_log_file'; 用sudo tail -f /var/lib/mysql/localhost-slow.log查看内容;为使配置永久生效,需在/etc/my.cnf或/etc/mysql/mysql.conf.d/mysqld.cnf的[mysqld]段添加相应参数并重启MySQL服务。

MySQL的运行日志是排查问题、优化性能的重要依据。常见的日志类型包括错误日志(error log)和慢查询日显(slow query log)。下面介绍如何查看这两种日志。
1. 查看MySQL错误日志
错误日志记录了MySQL启动、运行、关闭过程中的异常信息,如连接失败、崩溃、配置错误等,是排查服务异常的第一手资料。
要查看错误日志,先确认日志文件的位置:
- 登录MySQL执行以下命令查看错误日志路径:
返回结果类似:
+---------------+---------------------------+| Variable_name | Value |
+---------------+---------------------------+
| log_error | /var/log/mysql/error.log |
+---------------+---------------------------+
拿到路径后,使用系统命令查看日志内容:
sudo tail -f /var/log/mysql/error.log可结合grep过滤关键信息,比如查找“ERROR”或“Crash”:
sudo grep -i "error" /var/log/mysql/error.log2. 开启并查看慢查询日志
慢查询日志记录执行时间超过指定阈值的SQL语句,用于发现性能瓶颈。
先确认慢查询日志是否开启:
SHOW VARIABLES LIKE 'slow_query_log';如果值为OFF,需要开启:
SET GLOBAL slow_query_log = 'ON';设置慢查询的阈值(单位:秒),例如设置为1秒:
SET GLOBAL long_query_time = 1;查看慢查询日志文件路径:
SHOW VARIABLES LIKE 'slow_query_log_file';返回示例:
+----------------------+------------------------------------+| Variable_name | Value |
+----------------------+------------------------------------+
| slow_query_log_file | /var/lib/mysql/localhost-slow.log |
+----------------------+------------------------------------+
使用系统命令查看慢查询日志内容:
sudo tail -f /var/lib/mysql/localhost-slow.log日志中会显示执行时间、锁定时间、返回行数和具体的SQL语句,便于分析优化。
3. 配置建议
上述设置在重启MySQL后会失效。若需永久生效,应修改MySQL配置文件(通常是/etc/my.cnf或/etc/mysql/mysql.conf.d/mysqld.cnf):
- 在[mysqld]段添加:
long_query_time = 1
log_error = /var/log/mysql/error.log
slow_query_log_file = /var/lib/mysql/localhost-slow.log
保存后重启MySQL服务使配置生效:
sudo systemctl restart mysql基本上就这些。掌握错误日志和慢查询日志的查看方法,能快速定位数据库问题,提升运维效率。










