当前位置: 首页 > news >正文

【MySQL是怎么运行的】三、事务

概念

多组sql,要满足四大特性

四大特性

 原子性:事务内的多个sql同时成功,同时失败,靠undo日志保证
 一致性:事务执行前后,数据从一个合法状态转为另一个合法状态,靠业务保证
 隔离性:事务之间相互隔离,靠MVCC和锁保证
 持久性:持久化到磁盘,靠redo日志保证

并发问题

create table account
(
    id      int primary key auto_increment,
    name    varchar(15),
    balance DECIMAL(10, 2)
);
insert into account(name, balance)
values ('张三', 100),
       ('李四', 0);
  • 脏写:写了其他事务未提交的数据,最低的事务隔离级别就解决了
  • 脏读:读了其他事务未提交的数据

事务一中张三给李四转账50,未提交事务。事务二读取到的张三余额50是脏数据(可能回滚)

  • 不可重复读:同个事务内,多次读取的数据不一致

事务一中张三给李四转账50,提交事务。事务二第一次读取张三余额50。事务一中张三继续给李四转账50,提交事务,事务二第二次读取张三余额是0.

幻读:同个事务内,多次读取的行数不一致

事务一中张三给李四转账50,提交事务。事务二第一次读取余额为50的用户有两个(张三和李四)。事务一中张三继续给李四转账50,提交事务,事务二第二次读取余额为50的用户只有一个(李四100元)

隔离级别

读未提交:解决脏写
读已提交:解决脏读
可重复读:解决不可重复读,MySQL默认隔离级别
串行化:解决幻读,不推荐

相关文章:

  • 网站下载地址seo网站优化培训找哪些
  • 网站系统建设合同范本网络优化主要做什么
  • 政务大厅网站建设管理制度百度收录网站需要多久
  • 邯郸全网推广合肥seo网站排名
  • 做个外贸网站大概多少钱2021年10月新闻摘抄
  • 做竞价网站访问突然变少广州seo网络营销培训
  • 密立根油滴仪测油滴电荷数据计算 Python实现
  • [算法] 结点K个一组的链表反转(hard)
  • 深入解析 TCP 协议【真题】
  • js-对象浅拷贝和深拷贝( B复制A,看B的值对比:都变为浅,一变一不变为深)
  • 5G技术与物联网融合:未来智慧城市的基石
  • Docker+Flask 实战:打造高并发微服务架构
  • ListView_GetIconBufferX函数和ListView_GetIconBufferY函数和RECT结构的关系
  • 【CXX】6.6 UniquePtr<T> — std::unique_ptr<T>
  • Windows安装milvus和图形化管理工具attu
  • 【webrtc debug tools】 rtc_event_log_to_text
  • 大数据面试之路 (一) 数据倾斜
  • 第一章:介绍Python编程-1.Python是什么
  • 2.2 企业级ESLint/Prettier规则定制
  • Excel两列和依次相减
  • AnyAnomaly: 基于大型视觉语言模型的零样本可定制视频异常检测
  • 中断机制及NVIC管理解析
  • Xavier 初始化:深度网络权重初始化的经典之作
  • Java小白-管理项目工具Maven(2)初识Maven
  • Cursor配置Golang开发环境
  • Java变量与常量