⚫ 介绍
    二进制日志(BINLOG)记录了所有的 DDL(数据定义语言)语句和 DML(数据操纵语言)语句,但不包括数据查询(SELECT、SHOW)语句。
    作用:①. 灾难时的数据恢复;②. MySQL的主从复制。在MySQL8版本中,默认二进制日志是开启着的,涉及到的参数如下:
    SHOW variables like ‘%log_bin%’;
    image.png

    ⚫ 日志格式
    MySQL服务器中提供了多种格式来记录二进制日志,具体格式及特点如下:
    image.png
    show variables like ‘%binlog_format%’

    ⚫ 日志查看
    由于日志是以二进制方式存储的,不能直接读取,需要通过二进制日志查询工具 mysqlbinlog 来查看,具体语法:
    mysqlbinlog [参数选项] logfilename
    参数选项:
    -d 指定数据库名称,只列出指定的数据库相关操作。
    -o 忽略掉日志中的前 行命令。
    -v 将行事件 数据变更 重构为SQL语句
    -w 将行事件 数据变更 重构为SQL 语句,并输出注释信息

    ⚫ 日志删除
    对于比较繁忙的业务系统,每天生成的binlog数据巨大,如果长时间不清除,将会占用大量磁盘空间。可以通过以下几种方式清理日志:
    image.png
    也可以在mysql的配置文件中配置二进制日志的过期时间,设置了之后,二进制日志过期会自动删除。
    show variables like ‘%binlog_exprie_logs_seconds%’