温馨提示×

debian mysql怎么查日志

小樊
49
2026-10-07 18:14:13
栏目: 云计算

在 Debian 上,MySQL(或 MariaDB)的日志位置和查看方式取决于你用的版本以及日志功能是否开启。下面分情况说明。


一、先确认是 MySQL 还是 MariaDB

mysql --version

或

systemctl status mysql

二、常见日志类型

MySQL 常见日志有:

  • 错误日志(error log) ✅(最常用)
  • 慢查询日志(slow query log)
  • 二进制日志(binlog)
  • 通用查询日志(general log)

三、查看错误日志(最常用)

1️⃣ 找日志路径

登录 MySQL 执行:

SHOW VARIABLES LIKE 'log_error';

常见路径:

  • /var/log/mysql/error.log
  • /var/log/mysql/mysql.err

2️⃣ 直接查看

sudo tail -n 100 /var/log/mysql/error.log

实时查看:

sudo tail -f /var/log/mysql/error.log

四、查看慢查询日志

1️⃣ 确认是否开启

SHOW VARIABLES LIKE 'slow_query_log';
SHOW VARIABLES LIKE 'slow_query_log_file';

2️⃣ 查看日志

sudo tail -f /var/log/mysql/mysql-slow.log

五、查看二进制日志(binlog)

1️⃣ 确认路径

SHOW VARIABLES LIKE 'log_bin';
SHOW VARIABLES LIKE 'log_bin_basename';

2️⃣ 查看 binlog 列表

ls -lh /var/lib/mysql/

3️⃣ 用工具查看内容

mysqlbinlog /var/lib/mysql/mysql-bin.000001

六、通过 systemd 看日志(推荐)

如果 MySQL 启动异常:

sudo journalctl -u mysql
sudo journalctl -u mysql -n 100

七、如果日志是空的?

可能是没开启,编辑配置文件:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

示例:

[mysqld]
log_error = /var/log/mysql/error.log
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
long_query_time = 1

重启:

sudo systemctl restart mysql

八、快速自查清单

mysql -e "SHOW VARIABLES LIKE 'log_%';"

如果你愿意,可以告诉我:

  • Debian 版本
  • MySQL / MariaDB 版本
  • 想查什么问题(启动失败 / 慢 / 被删数据等)

我可以给你更精确的命令。

0 踩