Mysql binlog查看相关问题

2 篇文章 0 订阅

mysql 查看日志

首先,先要知道bin log 有没有开启;

 show variables like "log_%";

在这里插入图片描述
像这种就是没有开启,这个时候,就需要先进行开启;

假设,已经开启了bin log 日志;
在这里插入图片描述
这里,就是有命名规则;像我这边就是 DESKTOP-0AIBBVF-bin; 所以根据这个来查找文件即可
查看有多少个bin log文件

show binary logs;

注意:当停止或重启服务器时,服务器会把日志文件记入下一个日志文件系统,Mysql会重启时生成一个新的日志文件,文件序号递增;
在这里插入图片描述
查看其中一个binlog 文件
查看的binlog 文件名可以去你自己的数据库文件中查找:

 show binlog events in 'DESKTOP-0AIBBVF-bin.000125';

结果如下:
在这里插入图片描述
每更新一句语句,都会有记录; 这时候,发现看不懂啊;
原因如下: 在这里插入图片描述
在mysql 8 的时候,升级为row 复制了不是基于(statement) sql语句的复制;
statement:
优点:记录每一条修改数据的sql,大大减少了binlog 日志量,节约了IO 缺点:对一些特殊功能的复制效果不是很好。比如:函数、存储过程的复制;
row
优点:记录每行修改的记录,可以正确复制每一行的情况;
缺点:row格式会记录每行记录修改的记录,这样可能会产生大量的日志内容,比如一条update语句修改100条记录,那么这100条记录的修改都会被记录到binlog中,这样会造成binlog日志量会很大;
Mixed
一般情况下,使用statement来进行保存,对于一些statement无法完成主从复制的操作,则采用row格式来保存binlog,是row 和 statement的结合;

测试
把默认的row进行修改,修改当前数据库日志格式为statement;
在这里插入图片描述
然后,在进行删除语句;再查看binlog日志;果然,体现出来了;
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值