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 restartbinlog日志文件保存位置:/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';