MySQL 日志管理

110 阅读1分钟

四种日志介绍

错误日志

错误日志,用来记录当MySQL启动、停止或运行时发生的错误信息,默认已开启。

 vim /etc/my.cnf
 ​
 [mysqld]
 log-error=/home/mysql/mysql_error.log   #指定日志的保存位置

image.png

通用查询日志

用来记录MySQL的所有连接和语句,默认是关闭的

general_log=ON
general_log_file=/usr/local/mysql/data/mysql_general.log

image.png

二进制日志(binlog)

用来记录所有当MySQL启动、停止或运行时发送的错误信息,默认是关闭的

log-bin=mysql-bin				
或
log_bin=mysql-bin

image.png

慢查询日志

用来记录所有执行时间超过long_query_time秒的语句,可以找到哪些查询语句执行时间长,以便于优化,默认是关闭的

slow_query_log=ON
slow_query_log_file=/usr/local/mysql/data/mysql_slow_query.log
long_query_time=5	   		

systemctl restart mysqld   

image.png

查看日志状态

1、查看通用查询日志是否开启

mysql -u root -p
show variables like 'general%';	

2、查看二进制日志是否开启

show variables like 'log_bin%';

3、查看慢查询日功能是否开启

show variables like '%slow%';

4、查看慢查询时间设置

show variables like 'long_query_time';

image.png

分割二进制日志

mysql-bin.index 文件会对二进制日志进行分割。

每次重启 mysql 或 在数据库中 "flush logs"刷新日志之后,会生成一个新的二进制日志。

image.png