在MySQL中,update是原地更新数据,原地更新数据,原地更新数据。重要的事情说3遍。这是不同于PGSQL的。

update的具体过程是:

(1)、先对该条record对应的索引加X锁

(2)、将修改后的数据写入到redo.log中

(3)、将修改之前的数据备份到undo.log中

(4)、备份完毕,原地更新数据,修改txid,将roll_ptr指向undo.log中该条记录的备份,最后提交事务tx

(5)、提交事务tx过程中,服务器突然宕机,再次重启时,重放redo.log中的日志进行数据的修复。

如果在还未提交tx之前服务器突然宕机了,但是对应的dirty page已经flush到磁盘文件中,那么再次启机时,可以根据undo.log中的日志进行数据的恢复

MySQL中update一条record的过程相关推荐

  1. MS sql server和mysql中update多条数据的例子

    1. MS sql server中使用动态的表名:declare @tableName nvarchar(160) set @tableName = 't_stat_all' declare @sql ...

  2. mysql中update多条相同数据时,如何只做到只更新其中一部分?

    这个问题就非常有意思了,不常遇到,遇到的话网上也是各种瞎说. 假如有如图所示的一个表,在没有id字段的情况下,怎样做到只更新第三条,而不更新前两条. 在mysql 5.7 community上已经尝试 ...

  3. Mysql中一千万条数据怎么快速查询

    文章来源: 学习通http://www.bdgxy.com/ 目录 普通分页查询 如何优化 偏移量大 采用id限定方式 优化数据量大问题 普通分页查询 当我们在日常工作中遇到大数据查询的时候,第一反应 ...

  4. mysql的更新语句_IT大叔详谈mysql中update语句和delete语句及应用

    学习是一件枯燥的事,你要牺牲自己的业余时间,你要忍受孤独,坚持下来了你就胜利了,学习是一个过程,只要循序渐进,每天进步一点点,只有这样你才能提高进而成功.今天老韩来讲一讲mysql中的update语句 ...

  5. MySQL中update修改数据与原数据相同会再次执行吗

    背景 本文主要测试MySQL执行update语句时,针对与原数据(即未修改)相同的update语句会在MySQL内部重新执行吗? 测试环境 MySQL5.7.25 Centos 7.4 binlog_ ...

  6. mysql中update子查询,update 子查询使用介绍

    基础知识 1, 关联子查询和非关联子查询 在非关联子查询中,内部查询只执行一次并返回它的值给外部查询,然后外部查询在它的处理中使用内部查询返回给它的值.而在关联子查询中,对于外部查询返回的每一行数据, ...

  7. Mysql中update select更新数据,insert ignore into

    在mysql中一般更新我们都是通过 update set指定的值,但是有些时候,我们数据库中存在一些记录,这时候我们希望用已有数据库中的记录来进行更新,这时候我们可以通过mysql的update se ...

  8. mysql 怎么查后几条_查询MYsql中最后几条记录

    有时候我们需要数据库中的实时数据,而这些实时数据又是插入在表最后面的,所以我们需要获取表中最后面的几条记录,怎么操作呢 select * from msg order by id desc limit ...

  9. MySQL中update修改数据与原数据相同会再次执行吗?

    你关注的就是我关心的! 作者:powdba 来源:阿里云栖社区 一.背景 本文主要测试MySQL执行update语句时,针对与原数据(即未修改)相同的update语句会在MySQL内部重新执行吗? 二 ...

最新文章

  1. js将字符串转换为数字等类型
  2. 中国人民大学_《组织行为学》_15如何降低集体决策的风险?
  3. python3数据类型:Dictionary(字典)
  4. dependencies与dependencyManagement的区(转自:http://blog.csdn.net/liutengteng130/article/details/46991829)
  5. 智慧城市建设面临“三座大山” 安全与服务需两手抓
  6. LeetCode 581. 最短无序连续子数组(Shortest Unsorted Continuous Subarray)
  7. java struts2 excel上传_文件上传方法,使用Struts2,实现Excel文件读取并写入数据库技术...
  8. python实现目标检测_由浅入深:教你如何构建一个行人目标检测模型(Python)
  9. 流量卡之家:物联网系统解决交通拥堵 全面开启未来绿色出行
  10. 柯洁预言AI绘画会替代大部分画师,网友:初代AI受害者现身说法
  11. Codeforces 437B 437C
  12. 用遗传算法解决VRP问题
  13. Kubernetes K8S之资源控制器Job和CronJob详解
  14. 利用稀疏格式矩阵求解方程组以及机器学习训练速度对比
  15. 正确选择合适的移动应用测试工具很重要
  16. [ESP32][esp-idf] AP+STA实现无线桥接 中转wifi信号 路由器
  17. 【Html+JS+CSS】简易轮播图核心代码分享 + 效果展示
  18. 工程伦理--10.3 工程师的职业美德内涵
  19. 【vector】模拟vector操作
  20. 【亲测有效】【无需重启电脑】三步解决电脑右键点击桌面没反应

热门文章

  1. Eclipse 控制console
  2. (转)浏览器兼容的JS写法总结
  3. [javascript|基本概念|Number]学习笔记
  4. PHP、C#、通用的DES加密
  5. Linux—程序包安装与管理
  6. VS2010中不可忽视的部分——VSTO
  7. Java实体对象为什么一定要实现Serializable接口呢?
  8. python的excel库_Python-Excel 模块哪家强?
  9. python 管道队列_关于python:Multiprocessing-管道与队列
  10. macbook所有型号大全_苹果笔记本型号大全