登录
首页 >  数据库 >  MySQL

InnoDb事物的几个特性总结

来源:SegmentFault

时间:2023-02-24 21:14:49 101浏览 收藏

哈喽!今天心血来潮给大家带来了《InnoDb事物的几个特性总结》,想必大家应该对数据库都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到MySQL、InnoDB,若是你正在学习数据库,千万别错过这篇文章~希望能帮助到你!

1:InnoDb的四个特性:一致性、原子性、持久性、隔离性
2:事物的隔离级别:可重复读、读已提交、读未提交、串行化
3:查看当前的事物隔离级别

show varibles like "transaction-isolation'

4:幻读:幻读是一个事物在事物开始中,两次select查询的结果不一直, 这产生的幻读。幻读存在的隔离级别有 R-U R-C R-R 。
5:幻读的解决方法:在RR的隔离级别下,我们对记录手动加上X锁的方法消除幻读(在Innodb的行锁锁定的是这个索引,估在记录实体存在与否没有关系,存在就在X锁,不存在就加 next-key lock/间隙锁),其他事物则无法插入此索引记录,避免幻读)
5:共享锁(shared):又称为S锁,读锁。一个事物对数据对象O记上S锁,可以对O进行读取操作,但是不能进行更新操作。加锁期间其他事物能对o加s锁,但是能加X锁
6:排他锁(Exclusive):又称为X锁,写锁。一个事物对数据0加上X锁,就可以对O进行读取和更新。加上期间其他事物不能对0加任何锁。

参考文档:https://juejin.cn/post/684490...
https://segmentfault.com/a/11...

今天关于《InnoDb事物的几个特性总结》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于mysql的内容请关注golang学习网公众号!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>