
前言
说到数据库事务,很多人就会想事务的ACID即原子性,一致性,隔离性,持久性,以及事物的四个隔离级别,但是并不是很明白为什么要用这四个特性来保证事务,以及事务的隔离级别是怎么产生的?包括LZ之前看《高性能MySQL》关于事务的介绍也是一脸蒙蔽,因为太抽象了。偶然在慕课网上看到《在线分布式数据库原理与实践》这个视频,讲的挺不错的。特地总结一波,分享一下,相信读完本文你可以轻松理解这些概念

事务简介
我们在写Java程序,遇到并发问题时,会想到用锁来解决。数据库遇到并发问题怎么解决呢?答案就是事务,事务的本质就是锁和并发的结合体
单个事务单元
举个例子Bob给smith转账100块,会有如下几个操作

这里需要对Bob账户和Smith账户进行加锁保证只有一个线程可以操作这些账户
数据库事务理解:ACID特性与隔离级别解析

本文详细介绍了数据库事务的四大特性——原子性、一致性、隔离性和持久性,并探讨了事务的隔离级别,包括可串行化、可重复读、提交读和未提交读,以及MVCC在并发控制中的作用,帮助读者深入理解事务的本质和应用场景。
订阅专栏 解锁全文
2150

被折叠的 条评论
为什么被折叠?



