数据库四种隔离级别:
未提交读(Read uncommitted):
事务在读数据的时候并未对数据加锁。
提交读(Read committed):
事务对当前被读取的数据加 行级共享锁(当读到时才加锁),一旦读完该行,立即释放该行级共享锁;
事务在更新某数据的瞬间(就是发生更新的瞬间),必须先对其加 行级排他锁,直到事务结束才释放。
可重复读(Repeatable reads):
事务在读取某数据的瞬间(就是开始读取的瞬间),必须先对其加 行级共享锁,直到事务结束才释放;
事务在更新某数据的瞬间(就是发生更新的瞬间),必须先对其加 行级排他锁,直到事务结束才释放。
可序列化(Serializable):
事务在读取数据时,必须先对其加 表级共享锁 ,直到事务结束才释放;
事务在更新数据时,必须先对其加 表级排他锁 ,直到事务结束才释放。
共享锁:如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁。获准共享锁的事务只能读数据,不能修改数据。 排他锁:如果事务T对数据A加上排他锁后,则其他事务不能再对A加任任何类型的封锁(即其他事务也不能对数据A再加共享锁进行读操作)。获准排他锁的事务既能读数据,又能修改数据。
本文深入解析数据库四大隔离级别:未提交读、提交读、可重复读及可序列化,阐述了共享锁与排他锁的工作原理,帮助读者理解不同场景下如何选择合适的隔离级别。

1545

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



