二进制日志:记录DDL语言和DML语言对数据库的操作。
DDL语言:创建、删除修改对象(表,视图,存储过程,函数)
DML语言:对表进行增删改,二进制日志只记录“增删改”,查记录到查询日志中去。
查看日志命令:mysqlbinlog /var/lib/mysql/mysql-bin.000009 -s -d schoolDB (-s 去掉注释行,-d 指定只查看schoolDB日志)
暂停二进制日志功能:
set sql_log_bin=0
清除旧的日志:
清除某个日志以前的日志: purge master logs to 'mysql-bin.000002';
purge master logs before '2015-11-4 13:33:00";
重置日志:reset master;
设置日志的过期天数:mysql> show variables like '%expire_logs_days%';
+------------------+-------+
| Variable_name | Value |
+------------------+-------+
| expire_logs_days | 0 |
+------------------+-------+
1 row in set (0.00 sec)
在my.cnf 中添加参数:
expire_logs_days=3
max_binlog_size=100M
允许函数和存储过程记录日志:修改配置文件。
log_bin_trust_function_creators=1
log_bin_trust_routine_creators=1
错误日志:mysql> show variables like 'log_error%';
+---------------------+---------------------+
| Variable_name | Value |
+---------------------+---------------------+
| log_error | /var/log/mysqld.log |
| log_error_verbosity | 3 |
+---------------------+---------------------+
2 rows in set (0.00 sec)
查询日志:开启mysql5.7.25 (查询版本命令:mysql --verson)需要在my.cnf文件中加入如下参数:
general_log=1
5.5版本是添加参数:log=/var/lib/mysql/audit.log