MySQL-事务(五)

什么事事务,它有哪些特性,
说一说事务的隔离级别,
分别解决了社么问题

社么是事务,他有哪些特性
事务是一组原子性的操作 这些操作要么全部发生要不全部不发生 事务把数据从一种一致性 转换为另一种一致性状态

事务的四种特性
原子性 不可分割的操作 要么全部正确执行 要么全部不执行
一致性 把数据库从一种一致性的状态转换成另一种一致性的状态 事务的开始到事务的结束 数据库完整性没有被破坏
隔离性 每个读写事务相互之间是分开的 在事务提交之前对其他事务是不可见的
持久性 事务一旦提交 结果就是永久性的 宕机了也能恢复

说一说事务的隔离级别 分别解决社么问题

读未提交
读已提交
可重复度
序列化

他们分别解决了 脏读 不可重复度 幻读

脏读 事务a读取了事务b更新的数据 然后b回滚了 那么a读取到的数据是脏数据

不可重复读 事务a多次读取同一数据 事务b在事务a多次读取的过程 对数据做了更新提交 导致事务a多次读取同一数据是 结果是不一致的

幻读 系统管理员a将数据库中 所有学生成绩从具体分数改成了abde等级 但是系统管理员b就在这时候插入一条具体分数的记录 当系统管理员a改结束后发现还有一条记录没有改过里啊 好像发生了幻觉一样

解决不可重复度读的问题 只需锁住满足条件的行

解决幻读需要锁表

事务的实现原理 事务的分类 使用务应该注意的问题
事务是基于重做日志文件 和回滚日志文件 实现的

提交一个事务先将该事务的所有日志写入到重做日志文件进行持久化 数据库可以通过重做日志来保证事务的原子性 和 持久性
每当修改事务时 还会产生undolog回滚日志 如果需要回滚 更具undolog 反向语句进行逻辑操作 undolog 主要实现数据库的一致性

事务分类
扁平事务
带有保存点的事务
链事务
嵌套事务
分布式事务

使用事务应该注意的问题
不要在循环中使用事务(循环提交回到主大量的redo log)
不要使用自动提交
不要使用自动回滚
长事务切分处

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值