在 CentOS 上开启 MySQL 日志,通常我们指的是以下几种常见日志:
下面以 CentOS 7/8 + MySQL 5.7/8.0 为例说明。
一般配置文件在:
/etc/my.cnf
# 或
/etc/my.cnf.d/*.cnf
编辑配置文件:
vim /etc/my.cnf
[mysqld]
log-error=/var/log/mysqld.log
查看错误日志:
tail -f /var/log/mysqld.log
[mysqld]
slow_query_log=1
slow_query_log_file=/var/log/mysql/slow.log
long_query_time=2
说明:
long_query_time=2:超过 2 秒的 SQL 记录创建日志目录并授权:
mkdir -p /var/log/mysql
chown mysql:mysql /var/log/mysql
[mysqld]
general_log=1
general_log_file=/var/log/mysql/general.log
[mysqld]
log-bin=mysql-bin
server-id=1
注意:
server-id 必须唯一(主从必须)/var/lib/mysql查看 binlog:
mysqlbinlog mysql-bin.000001
systemctl restart mysqld
SET GLOBAL slow_query_log = 'ON';
SET GLOBAL long_query_time = 2;
SET GLOBAL general_log = 'ON';
⚠️ 动态修改重启后失效
SHOW VARIABLES LIKE 'slow_query_log';
SHOW VARIABLES LIKE 'general_log';
SHOW VARIABLES LIKE 'log_bin';
setenforce 0
# 或添加安全上下文
不影响日志配置
如果你告诉我:
我可以给你更精确的配置示例。