软考--数据库上锁

在多用户共享的系统中,许多用户可能同时对同一数据进行操作,可能带来数据不一致问题。为了解决这类问题,数据库系统必须控制事务的并发执行,保证数据库处于一致的状态,在并发控制中引入两种锁:排他锁(Exclusive Locks,简称X锁)和共享锁(Share Locks,简称S锁)。 

 

排他锁又称为写锁,用于对数据进行写操作时进行锁定。如果事务T对数据A加上X锁后,就只允许事务T读取和修改数据A,其他事务对数据A不能再加任何锁,从而也不能读取和修改数据A,直到事务T释放A上的锁。 

 

共享锁又称为读锁,用于对数据进行读操作时进行锁定。如果事务T对数据A加上了S锁后,事务T就只能读数据A但不可以修改,其他事务可以再对数据A加S锁 来读取,只要数据A上有S锁,任何事务都只能再对其加S锁(读取)而不能加X锁 (修改)。             

posted @ 2022-05-04 10:32  我试试这个昵称好使不  阅读(49)  评论(0编辑  收藏  举报