mysql事务

事务

事务是在数据库系统中保证一组操作要么全部成功,要么全部失败的机制,,确保数据在并发访问和潜在故障下的正确性和可靠性

事务四大特性
  • 原子性:atomicity : 事务操作是一个整体,要么全部成功,要么全部失败,不存在中间状态
  • 一致性 : consistency : 事务执行前后,数据库必须从一个合法性状态转变成另一个合法性状态,强调结果永远合法,符合规则
  • 隔离性: 多个并发事务之间互不干扰
  • 持久性: 一旦事务提交,结果永久保存
事务引发的问题
  • 脏读 : 事务A读到了事务B未提交的修改数据,如果事务B回滚,那么A读到的数据就是脏数据
  • 不可重复读 : 在同一个事务A内,两次读取同一行数据,结果不一致(因为在此期间事务B修改并提交了数据)
  • 幻读 : 在同一个事务中,两次执行相同范围的查询,返回的记录数不一样(因为在此期间,事务B插入或者删除符合这个查询条件的数据并提交了)
事务的隔离级别
  • 读未提交 : 一个事务能读取到其他事务尚未提交的数据,,会脏读,不可重复读,幻读
  • 读已提交: 一个事务只能读取到其他事务已经提交的数据,, 会不可重复读,幻读
  • 可重复读: 一个事务执行期间,他看到的数据在事务开始时就被确定,不会受其他事务的影响,,,会幻读
  • 串行化 : 让并发事务的执行结果,串行的一个接一个的执行 ,, 避免脏读,不可重复读,幻读

mysql的隔离级别是可重复读

相关推荐
要开心吖ZSH9 小时前
一次线上锁风暴复盘:号源表大范围 DELETE 的隐患与分批删除改造
数据库·mysql·行锁·1024程序员节·间隙锁·lockwaittimeout
l1t10 小时前
在windows中测试musql数据库
数据库·sqlite·go·1024程序员节
鬼手点金11 小时前
从 API 消息到模型 Token:Chat Template
java·前端·javascript·数据库·人工智能·深度学习·1024程序员节
CRMEB系统商城11 小时前
Redis + 消息队列 + 连接池:CRMEB PRO 性能优化的三驾马车
大数据·数据库·人工智能·小程序·php·1024程序员节
鸽芷咕11 小时前
KingbaseES SQL 调优六步法:定位、诊断、下药、验证,一步都别省
数据库
黄俊懿11 小时前
【架构师从入门到进阶】第七章:缓存和存储的优化思路——第一节:缓存概述
数据结构·数据库·分布式·缓存·架构·系统架构·1024程序员节
John_Hui12 小时前
MySQL 进阶知识
数据库·sql·mysql·1024程序员节
java_nnnn12 小时前
Redis 核心特性与应用场景:从底层原理到分布式系统应用
数据库·redis·1024程序员节
Random Glow12 小时前
一条 SQL 从输入到返回,中间经历了什么
数据库·后端·mysql·性能优化·innodb·1024程序员节
何中应12 小时前
MySQL 连接驱动单独下载的两种方式
数据库·mysql·maven