1、每条记录在更新的时候都会同时记录一条回滚操作。
2、同一条记录在系统中可以存在多个版本,这就是数据库的多版本并发控制(MVCC)。文章源自飞鸟学习网-https://www.pk88.net/2022-0301-4.html
3、在读已提交的级别下,都会通过MVCC获取当前数据的最新快照。文章源自飞鸟学习网-https://www.pk88.net/2022-0301-4.html
文章源自飞鸟学习网-https://www.pk88.net/2022-0301-4.html
实例文章源自飞鸟学习网-https://www.pk88.net/2022-0301-4.html
1.selectcount(1)fromuserwhereage=20; --return0:当前没有age=20的 2.updateusersetname=testwhereage=20; --Affects10rows:因为事务B刚写入10条age=20的记录,而写操作是不受MVCC影响,能看到最新数据的,所以更新成功,而一旦操作成功,这些被操作的数据就会对当前事务可见 3.selectcount(1)fromuserwhereage=20; --return10:出现幻读
以上就是Mysql实现事务隔离的方法,希望对大家有所帮助。更多mysql学习指路:MySQL文章源自飞鸟学习网-https://www.pk88.net/2022-0301-4.html 文章源自飞鸟学习网-https://www.pk88.net/2022-0301-4.html
全站资源源于网络整合,仅供学习研究,不可商用,不提供技术指导,如有侵权请告知删除,可以投稿,广告合作联系V: pk88net
我的微信
我的微信
微信扫一扫
评论