MySQL--binlog和relay log的生成和删除
##==================================================================================================##
binlog文件生成:在每条二进制日志写入到日志文件后,会判断该文件是否超过max_binlog_size,如果超过则生成一个新的binlog
relay log文件生成:每从Master fetch一个events后,判断当前文件是否超过max_relay_log_size 如果超过则自动生成一个新的relay-log-file
##==================================================================================================##
binlog文件删除机制:
1、当使用RESET MASTER命令后,会清空全部二进制日志
命令:RESET MASTER;
2、当执行PURGE MASTER LOG TO命令后,会删除指定binlog以及之前的二进制日志
命令:PURGE MASTER LOGS TO 'binlog file name';
3、当执行PURGE MASTER LOG BEFORE 命令后,会删除指定时间前的所有二进制
命令:PURGE MASTER LOGS TO 'datetime';
4、当实例启动或执行flush logs时,按照expire_logs_days设置,如果超过该参数指定天数的二进制会被全部删除
命令:mysqladmin flush-log
##==================================================================================================##
binlog文件删除顺序:
先从文件系统中删除binlog文件,在修改binlog的索引文件。
##==================================================================================================##
relay log删除机制
1、在SQL Thread每执行完一个events时判断,如果该relay-log 已经不再需要则自动删除
2、在实例重启或执行flush log时判断relay-log是否超过expire-logs-days的设定值,超过purge file
3、在执行reset slave时删除所有relay-log
##==================================================================================================##
##查看文件日期
ll -h --time-style='+%Y-%m-%d %H:%M:%S' mysql-bin*
##==================================================================================================##
补充知识:
1、在使用mysqldump备份时,可以指定参数--flush-logs来在备份开始前刷新日志
2、参数expire-logs-days的默认值为0,会导致relay-log在flush logs时没有自动清除。
3、除参数binlog-format外,参数binlog_row_image也会影响binlog日志文件大小,尤其当包含blob等大字段记录行被更新时。
4、参数binlog_rows_query_log_events用来在binlog中存放导致数据变化的“原始SQL”,该参数默认不启用,在部分场景中可以开启该参数来排查。
##==================================================================================================##
关闭会话级别的BINLOG
如果不希望当前会话的行为被记录到binlog中,可以使用参数sql_log_bin来禁用:
SET SESSION SQL_LOG_BIN=0
比如在主库上进行数据删除,或在主库上创建索引,但不希望传递到从库时,可以采用此方式处理
##==================================================================================================##

MySQL--binlog和relay log的生成和删除的更多相关文章
- 关于Relay Log无法自己主动删除的问题(Neither --relay-log nor --relay-log-index were used)
今天查看mysql err日志.发现mysql重新启动时总会有例如以下日志出现: [Warning] Neither --relay-log nor --relay-log-index were us ...
- 【文档】七、Mysql Binlog不同事件类型的事件内容
下面主要讲述了每个类型的事件中的固定和可变部分的数据. Start_log_event_v3/START_EVENT_V3 这个事件出现在v1或v3的binlog文件的开头部分.对于4.0和4.1版本 ...
- 【文档】五、Mysql Binlog事件结构
这个部分描述了事件被写入binlog或者delay log中的属性.所有的事件有相同的整体结构,也就是包含事件头和事件数据: +===================+ | event header ...
- 【文档】一、Mysql Binlog概述
Binlog是一系列日志文件,他们包含的内容是Mysql数据内容的改变.如果想开启binlog功能,需要在启动时带上--log-bin参数. binlog是从Mysql3.23.14版本开始的.它包含 ...
- Canal - 数据同步 - 阿里巴巴 MySQL binlog 增量订阅&消费组件
背景 早期,阿里巴巴 B2B 公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求 ,主要是基于trigger的方式获取增量变更.从 2010 年开始,公司开始逐步尝试数据库日志解析,获取增量变 ...
- MySQL从库生成大量小的relay log案例模拟
最近看到"八怪"写的<MySQL:产生大量小relay log的故障一例>,因之前也遇到类似的情况,一直没搞懂原理及复现,看完此文章后,本着实践是检验真理的唯一标准的原 ...
- mysql relay log参数汇总
前言:MySQL进行主主复制或主从复制的时候会在配置文件制定的目录下面产生相应的relay log,本文档总结这些相关参数的定义及解释. 1.什么是relay log The relay log, l ...
- MySQL:binlog 和 redo log
[参考文章]:MySQL中Redo与Binlog顺序一致性问题? [参考文章]:极客时间 1. 数据更新时的日志处理流程 1.1 redo log(prepare状态) 此时SQL已经成功执行了,已经 ...
- MySQL Binlog和Relaylog生成和清理
=====================================================================================binlog文件生成:在每条二 ...
随机推荐
- BIO,NIO,AIO(NIO2)的理解
写在前面,这里所说的IO主要是强调的网络IO 1.BIO(同步并阻塞) 客户端一个请求对应一个线程.客户端上来一个请求(最开始的连接以及后续的IO请求),服务端新建一个线程去处理这个请求,由于线程总数 ...
- bootstrap 坑
1. 表格内存出不来,也不报错 .. 值是对的.. 原因是 table 中必须有属性 data-toggle="table" <table id="My ...
- java 内存, 类加载g
1. java 内存区域 方法区 虚拟机栈 本地方法栈 堆 程序计数器 其中 : 方法区 和 堆 是所有线程共享的 , 其他是线程隔离的 1. 程序计数器 : 可以看做是当前线程所执行的字节码的 ...
- connect: Address is invalid on local machine or port is not valid on remote
idea 运行正常打成jar包运行提示“connect: Address is invalid on local machine or port is not valid on remote” , 解 ...
- 关于使用的xshll和xftp中乱码咋办?
1.Xshll中 2.Xftp中同理都是一样的设置
- js 异步加载和同步加载
异步加载 异步加载也叫非阻塞模式加载,浏览器在下载js的同时,同时还会执行后续的页面处理.在script标签内,用js创建一个script元素并插入到document中,这种就是异步加载js文件了: ...
- java15
1.数组 格式:数据类型 [ ] 数据名称 = new 数据类型 [ ] { }: 2.初始化 静态初始化(已知要开多少个房间来存储数据) int[ ] a =new int[ ] {12,32,54 ...
- mac安装oh my zsh
克隆项目到本地 git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh 2.创建配置文件 cp ~/.oh-my-zsh/ ...
- Shader中的lerp
下面解释下什么是lerp的功能: 官方解释 float lerp(float a, float b, float w) { return a + w*(b-a); } 木有看懂 我的解释:把上面的 ...
- 牛客训练五:炫酷路途(c++与dp)
题目链接:传送门 思路:每隔2^i(0<=i<=INF)就有一条路径,所以可以将从头到尾的路线视为一个有向图, 将ai,bi以此输入,然后将路径从小到大排序,不断更新路径. __built ...