mysql bin值总是变化_MySQL|update字段为相同的值是否会记录binlog
一 前言
前几天一个开发同事咨询我,update 更新字段为相同的值是否会记录binlog,我回复说不会。
其实 严格的说这个答案是不准确的,说要区分场景。是否记录 update 语句到binlog依赖于 binlog_format
的设置。具体情况 实践出真知。
二 测试
2.1 binlog_format
为 ROW 模式
2.2 binlog_format
为 STATEMENT 模式
解析binlog内容,完整的记录了update语句。
2.2 binlog_format
为 MIXED 模式
当 row_format 为mixed或者statement格式是,binlog 的大小发生改变,不管是否真的更新数据,MySQL都记录执行的sql 到binlog。
三 小结
基于row模式时,server层匹配到要更新的记录,发现新值和旧值一致,不做更新,就直接返回,也不记录binlog。
基于 statement 或者 mixed格式,MySQL执行 update 语句,并把更新语句记录到binlog。
那为什么问题来了 statement 和 mixed 会完整的记录sql语句呢?且听下回分解吧,因为我要解析源码,使用Clion 编译MySQL 调试环境还没成功。。
mysql bin值总是变化_MySQL|update字段为相同的值是否会记录binlog相关推荐
- MySQL数据库建表时对于某个字段设置了默认值,但是使用Spring Data Jpa的save后默认值没有生效
问题描述:MySQL数据库建表时对于某个字段设置了默认值,但是使用Spring Data Jpa的save后默认值没有生效.MySQL数据库中构建的用户表表结构如下所示: DROP TABLE IF ...
- mysql bin的过期时间_Mysql设置binlog过期时间并自动删除
问题: Mysql数据库由于业务原因,数据量增长迅速,binlog日志会增加较多,占用大部分磁盘空间. 解决方案: 出于节约空间考虑,可进行删除多余binary日志,并设置定期删除操作. 1.查看bi ...
- mysql字段值不能修改_mysql修改字段属性不起作用
之前遇到一个bug,后来发现了原因,现在来纪录下吧,省的以后忘了. bug:在数据库中定义了一个字段,类型为decimal(8,2) (PS:decimal(M,D)M数值的总位数. 通俗点讲,就是看 ...
- mysql怎么同时输入多个值_mysql – 一个字段搜索多个值
只是"有效"的简单解决方案可能是: SELECT * FROM products JOIN colors ON colors.id = products.color_id WHER ...
- Mysql增强半同步模式_MySQL增强半同步参数rpl_semi_sync_master_wait_point值AFTER_SYNC和AFTER_COMMIT...
转自 https://www.cnblogs.com/syksky/p/9429206.html MySQL 5.7.22 启用增强半同步复制 MySQL对该参数值的描述 Semisync can w ...
- mysql 行级锁 索引_mysql 行级锁 索引唯一值
做项目时由于业务逻辑的需要,必须对数据表的一行或多行加入行锁,举个最简单的例子,图书借阅系统.假设 id=1 的这本书库存为 1 ,但是有 2 个人同时来借这本书,此处的逻辑为 Select rest ...
- mysql表设计 列命名_MYSQL数据库字段命名及设计规范
1.设计原则 1) 标准化和规范化 数据的标准化有助于消除数据库中的数据冗余.标准化有好几种形式,但 Third Normal Form(3NF)通常被认为在性能.扩展性和数据完整性方面达到了最好平衡 ...
- mysql按逗号拼接起来_MySQL ----- 计算字段(Trim,Concat,as)(九)
存储在数据库表中的数据一般不是应用程序所需要的格式: 一种是从数据库中检索出转换.计算或格式化过的数据 另一种是将检索出数据在客户机应用程序或报告程序中重新格式化 这里当然建议使用第一种,借助计算字段 ...
- mysql获取两个表中日期字段的最小差值
一.前言 开发中碰到的需求,获取两个数据表中日期字段的差值,并且取得差值最小的那条数据.本篇文章主要讲述如果通过函数获取mysql的日期差值,实际编写时遇到的问题,并且分析需求,得出最终sql等. 二 ...
最新文章
- 一起学mini2440裸机开发(十)--mini2440外部中断实验
- VTK:绘图之SpiderPlot
- 0.IDA-基本的反汇编算法
- [RabbitMQ]创建Java开发环境_消费者_生产者
- smarty的配置与安装
- Win 7 安装VMware Workstation Pro 14出现 “Intel VT-x禁用”问题以及“无法连接 MKS: 套接字连接尝试次数太多;正在放弃”问题的实质性解决
- Python Tensorflow下的Word2Vec代码解释
- FleaPHP的单入口文件详解
- 67. 把字符串转换成整数
- 如何使用Keil5中的虚拟示波器进行软件仿真
- Spark的坑--Spark新手必看--Python Spark必读,耗费了我近三周的时间
- vscode怎么运行android项目,windows + flutter +android+ vscode 安装配置运行流程(详细版本)...
- 如何测试服务器性能?
- VC++中unhandled exception的处理
- Shor’s Algorithm 学习笔记
- 电子电路学习笔记(8)——二极管的作用
- 济南谷道电子商务正式落地济南!! 外贸牛是什么
- 西门子S7-1200PLC双轴定位算法电池焊接控制博图程序案例,触摸屏画面采用威纶触摸屏
- 【eXtremeComponents总结系列】使用总结(转载)
- 基于python的网站开发-FlaskWeb开发:基于Python的Web应用开发实战 pdf下载