Mysql底层原理一:事务

因为数据库操作也是并发操作,多个客户端在操作的时候,可能会存在很多问题

1. 一些问题

● 脏写(人家还没有提交,我可以改别人的数据),这个在数据库不存在,已经通过锁解决了
● 脏读(人家还没有提交,我可以查到别人的数据)
● 不可重复读(我在查询的过程中,别人修改的数据我可以看得到)
● 幻读(我在查询的过程中,数据多了或者少了)

2. 隔离级别

● 读未提交
● 读已提交
● 可重复读 (Mysql默认设置 RR),mysql通过mvcc避免了一部分幻读,最终是用锁来解决幻读的
● 串行化

3. 事务特性以及实现原理

● 原子性:undo log,要么成功,要么失败回滚
● 一致性:其他几个保证了一致性
● 隔离性:mvcc可以完成读写之间隔离,写写隔离需要通过锁
● 持久性:redo log + binlog 二阶段提交

相关推荐

  1. Mysql底层原理事务

    2024-04-08 20:48:05       14 阅读
  2. Mysql事务隔离级别及其底层原理

    2024-04-08 20:48:05       37 阅读
  3. MySQL底层原理

    2024-04-08 20:48:05       20 阅读
  4. spring中的事务底层原理

    2024-04-08 20:48:05       43 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-08 20:48:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-08 20:48:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-08 20:48:05       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-08 20:48:05       20 阅读

热门阅读

  1. 秒验:让APP验证和登录远不只是便捷

    2024-04-08 20:48:05       14 阅读
  2. 【C++ STL】简述

    2024-04-08 20:48:05       14 阅读
  3. 树莓派的简单应用场景

    2024-04-08 20:48:05       13 阅读
  4. 在c语言中,输出100以内的奇数

    2024-04-08 20:48:05       12 阅读
  5. zookeeper介绍

    2024-04-08 20:48:05       11 阅读
  6. C++ //练习 11.24 下面的程序完成什么功能?

    2024-04-08 20:48:05       12 阅读
  7. 2024-4-7

    2024-04-08 20:48:05       14 阅读
  8. LeetCode 第 392 场周赛个人题解

    2024-04-08 20:48:05       11 阅读
  9. ARMday2

    2024-04-08 20:48:05       10 阅读
  10. Github最受欢迎的RTSP流媒体十大开源项目

    2024-04-08 20:48:05       11 阅读
  11. docker安装部署mysql后忘记root密码

    2024-04-08 20:48:05       10 阅读
  12. 2024.03.27 校招 实习 内推 面经

    2024-04-08 20:48:05       11 阅读
  13. React-2-useState-获取DOM-组件通信

    2024-04-08 20:48:05       13 阅读