1、binlog概念:
binlog是一个二进制格式的文件 , 用于记录“修改数据或可能引起数据变更”的SQL语句(查询的SQL不会记录) 。2、binlog功能:
(1)恢复: 利用binlog日志恢复数据库数据 。(2)复制: 主从架构通过binlog同步数据 。(3)审计: 可以用binlog中的信息进行审计 , 判断是否有对数据库进行注入攻击 。
3、binlog的记录格式:(1)statement: 基于"语句"记录 , 记录的是修改SQL语句 。(2)row: 基于"行"记录 , 记录的是每行实际数据的变更 。(3)mixed: statement和row模式的混合 。
4、binlog的配置参数(1)开关配置:sql_log_bin=1|0用于控制会话级别二进制日志功能的开启与关闭MySQL> SET SQL_LOG_BIN=0;mysql> SOURCE somefile.sql;mysql> SET SQL_LOG_BIN=1;(2)文件路径:log_bin=/data/mysql3306/data/mysql-bin(3)记录格式:binlog_format=MIXED(4)过期时间:expire_logs_days=0日志过期后会被自动清理(5)同步磁盘:sync_binlog=1|0:事务提交时, 是否将事件从内存刷新至磁盘 , 安全期间应该开启保证数据安全, 开启后会略微造成性能下降(至关重要)(6)cache相关:binlog_cache_size=xxbinlog_stmt_cache_size=xxmax_binlog_size=xxmax_binlog_cache_size=xxmax_binlog_stmt_cache_size=xx
5、binlog文件的管理:二进制日志文件的构成:
索引文件: mysql-bin.index
日志文件: mysql-bin.000xxx
(1)查看二进制日志文件列表mysql> SHOW MASTER LOGS;mysql> SHOW BINARY LOGS;
(2)查看正在使用中的二进制文件mysql> SHOW MASTER STATUS;
(3)查看二进制文件内容:方式一:mysql> SHOW BINLOG EVENTS IN 'mysql-bin.000001' LIMIT 5;mysql> SHOW BINLOG EVENTS IN 'mysql-bin.000001' FROM 208 LIMIT 5, 10;方式二:# mysqlbinlog --start-position='100' --stop-position='1000' ./mysql-bin.000001# mysqlbinlog --start-datetime='2020-04-24 00:00:00' --stop-datetime='2020-04-24 17:00:00' ./mysql-bin.000001查看mysqlbinlog使用帮助# mysqlbinlog --help
(4)日志滚动: mysql> FLUSH LOGS;避免日志文件太大 , 可生成新binlog文件
(5)清除二进制日志:注意:只有做过备份的binlog才可以清除, 不可以手动直接删除文件 。mysql> PURGE BINARY LOGS BEFORE '2019-01-20 21:10:24';mysql> PURGE BINARY LOGS TO 'mysql-bin.000xxx';说明: 删除mysql-bin.000xxx之前的文件示例: 先做备份!!!# mkdir /data/backup/binlog/# cp mysql-bin.00000[0-9] /data/backup/binlog/# syncmysql> PURGE BINARY LOGS TO 'mysql-bin.000009'另外 , 清除所有binlog(慎用)mysql> reset master;
【MySQL的binlog知识梳理】 文章插图
推荐阅读
- 喝猴王茉莉茶的好处,喝茉莉花茶的好处和功效作用
- 花草茶搭配喝法与功效大全,花草茶的描述
- 玫瑰茉莉花茶的功效和与作用,茉莉花茶的功效和好处
- 玫瑰茄的泡法和图片,茉莉花茶的喝法
- MySQL中的索引下推
- 蝶豆花茶的功效与作用及禁忌,野菊花茶的功效与作用
- S5130 华三交换机初始化配置讲解
- 不同花草茶各自有怎样的功效,什么是花草茶
- 十种最神奇的快速减肥偏方,揭密11种美容消脂茶饮的配方
- 喝桂花茶的好处和坏处,喝菊花茶的好处和坏处