- error log 错误日志
- binlog 二进制日志
- slow log 慢日志
- genernal log 普通日志
错误日志
- 作用
从启动开始,发生过的error,warning,note信息
定位数据库问题:报错,异常(死锁) - 配置
默认位置:
log_error=$DATDDIR/hostname.err
可在数据库的my.cnf配置文件中配置日志参数:log_error=/data/3306/data/matt.err
log_error_verbosity=3
数据库中查看命令:select @@log_error;
select @@log_error_verbosity;
建议将日志和数据库文件分开存放,以防止日志文件影响数据库IO和存储空间. - 查看日志
主要关注日志中[ERROR]信息、启动故障、主从故障、死锁、数据库hang/堆栈信息、数据库crash信息 - 定期备份日志,可以使用crontab定时任务
二进制日志(binlog)
- 作用
记录了Mysql发生过的修改操作日志,输了show select.(8.0以前版本需要手动开启)
可以用于数据恢复、主从/SQL问题排查、审计(工具:binlog2sql、推荐my2sql) - 配置方法
[rootalocalhost data] # mkdir -p / data/3306/blog
#存放位置
[rootalocalhost data] # chown -R mysql.mysql/data/
[rootalocalhost data] # vim /etc/my.cnf
[mysqld]
user=mysgl
port=3306
server_id=51 #主从相关
basedir=/usr/local/mysql
datadir=/data/3306/data
log_error=/data/3306/data/matt.err
log_error_verbosity=3
1og_bin=/data/3306/blog/mysql-bin
数据库查看命令:select @@log_bin;
select @@log_bin_basename;
select @@binlog_format;select @@sync_binlog;
慢日志(slow_log)
- 作用
记录Mysql工作中,运行比较慢的语句,用来定位SQL语句性能问题 - 配置方法
开关:
slow_query_log=1
slow_query_log_file=
维度:
slow_query_log=1
long_query_time=0.5 #默认单位秒
log_queries_not_using_indexes=1
log_throttle_queries_not_using_indexes=1000
slow_query_log_file=/data/3306/blog/slow.log
普通日志(general_log)
普通日志,会记录所有数据库发生的事件及语句。
配置参数:
general_log=on
general_log_file=/data/3306/log/genlog
因为日志量级很大,为提升性能,生产环境一般不开启