介绍
前面提到的redo log
和 undo log
称为事务日志;
MySQL发起请求的流程如下
常见的日志有:
- 错误日志
- 查询日志:记录所有sql
- 二进制日志:用于数据恢复、主从复制,记录了DDL、DML语句除select外
- 慢查询日志
实践操作
往配置文件中设置相关属性:进入 /etc/mysql/mysql.conf.d/mysqld.cnf
将配置修改为如下
然后重启mysql服务: sudo service mysql restart
此时登录mysql,可以看到二进制日志开启:
binlog数据解析
在终端输入如:
mysqlbinlog --no-defaults --database=school --base64-output=decode-rows -v --start-datetime='2023-06-01 00:00:00' --stop-datetime='2023-06-10 00:00:00' mysql-bin.000001 | more
表明指定数据库school 中,时间2023-06-01 00:00:00 到 2023-06-10 00:00:00 的查询记录