mysql手册15_日志
错误日志:
查看错误日志存放位置:
show variables like 'log_error%';
+----------------------------+----------------------------------------+
| Variable_name | Value |
+----------------------------+----------------------------------------+
| log_error | /var/log/mysqld.log |
| log_error_services | log_filter_internal; log_sink_internal |
| log_error_suppression_list | |
| log_error_verbosity | 2 |
+----------------------------+----------------------------------------+
二进制日志 (binlog) :
记录了所有的DDL(数据定义语言)语句和DML(数据操纵语句),但是不包含数据查询语句(select),默认是关闭的
MySQL的主从复制就是基于binlog实现的
查找my.cnf配置文件的位置:
whereis my.cnf
my: /etc/my.cnf
在my.cnf中配置binlog:
#配置开启binlog日志
log_bin=binlog
#配置二进制日志的格式
binlog_format=MIXED
二进制日志的格式:
STATEMENT: 以SQL语句的形式记录
ROW: 记录的是每一行的数据变更
MIXED: 默认日志格式,混合了以上两种格式
#配置日志过期时间为3天
--expire_logs_days=3
#修改完成需要重启mysql
service mysql restart
binlog日志文件保存位置:/var/lib/mysql
查看STATEMENT格式的日志示例:
mysqlbinlog binlog.000001
查看ROW格式的日志示例:
mysqlbinlog -vv binlog.000001
日志清除(日志不及时清除将占用大量的磁盘空间):
方式1:清除所有的日志:
reset master
方式2:删除指定编号之前的日志:
purge master logs to 'binlog.000002'
方式3:删除‘yyyy-mm-dd hh24:mi:ss'时间点之前的日志
purge master logs before 'yyyy-mm-dd hh24:mi:ss'
查询日志(既包含增删改,又包含查询):
配置开启查询日志,0为关闭,1为开启
general_log=1
配置查询日志文件名(存放位置:/var/lib/mysql)
general_log_file=mysql_query_log
#修改完成需要重启mysql
service mysql restart
慢查询日志:
记录了执行时间超过 long_query_time(默认10s) 的所有的SQL语句
配置开启慢查询日志,0为关闭,1为开启
slow_query_log=1
配置慢查询日志文件名(存放位置:/var/lib/mysql)
slow_query_log_file=slow_query.log
配置慢查询日志的查询时间限制
long_query_time=10
#修改完成需要重启mysql
service mysql restart
查看配置的慢查询时间限制:
show variables like 'long_query_time';