1、数据库锁
数据库锁粒度划分:行锁、页锁、表锁。
共享锁:读锁、S锁。事务T可以对A进行读取,其他事务只能读取而不能修改数据。
排它锁:写锁、X锁、独占锁。只有事务T可以对A进行读取和修改,其他任何事务不能读取和修改。使用排他锁之前,需先检查已有排他锁存在。
2、 两段锁协议
1、对任何数据进行读写前,都必须先加锁
2、释放某个锁以后,不再去尝试获取其他锁
“两段锁”(两阶段):一是获得锁,二
是释放锁。
1、两段锁是可串行化的充分非必要条件
2、采用两段锁协议,仍然可能产生死锁
网友评论