排它鎖又稱為寫鎖((exclusive lock,簡記為x鎖)),若
事務t對
資料物件a加上x鎖,則只允許t讀取和修改a,其它任何事務都不能再對a加任何型別的鎖,直到t釋放a上的鎖。它防止任何其它事務獲取資源上的鎖,直到在事務的末尾將資源上的原始鎖釋放為止。在更新操作(insert、update 或 delete)過程中始終應用排它鎖。
相對於共享鎖的區別:
共享鎖又稱為讀鎖(share lock,簡記為s鎖),若事務t對資料物件a加上s鎖,則其它事務只能再對a加s鎖,而不能加x鎖,直到t釋放a上的s鎖。
資料庫死鎖的原因:若干事務相互等待對方釋放封鎖,就陷入了無限期等待狀態,系統進入死鎖。
預防資料庫死鎖的方法:1、要求乙個事務必須一次性封鎖所需要的所有資料(要麼全成功,要麼全部成功)
2、規定封鎖資料的順序,所有事務必須按照這個順序實行封鎖
解除資料庫死鎖的方法:允許死鎖發生,然後解除它,如果發現死鎖,則將其中乙個代價較小的事務撤銷,回滾這個事務,並釋放此事務持有的封鎖,使其他事務繼續進行。
排它鎖 共享鎖的區別
排它鎖又稱為寫鎖 exclusive lock,簡記為x鎖 若 事務t對 資料物件a加上x鎖,則只允許t讀取和修改a,其它任何事務都不能再對a加任何型別的鎖,直到t釋放a上的鎖。它防止任何其它事務獲取資源上的鎖,直到在事務的末尾將資源上的原始鎖釋放為止。在更新操作 insert update 或 d...
讀寫鎖,共享鎖,排它鎖
共享鎖 讀鎖 共享鎖就是允許多個執行緒同時獲取乙個鎖,乙個鎖可以同時被多個執行緒擁有。若事務t對資料物件a加上共享鎖,則事務t可以讀a但不能修改a,其他事務只能再對a加共享鎖,而不能加排它鎖,直到t釋放a上的共享鎖。這保證了其他事務可以讀a,但在t釋放a上的鎖之前不能對a做任何修改。排它鎖 寫鎖 排...
共享鎖與排它鎖
根據自己理解,物件指行或者表 共享鎖 s鎖 又稱讀鎖,若事務t對資料物件a加上s鎖,則事務t可以讀a但不能修改a,其他事務只能再對a加s鎖,而不能加x鎖,直到t釋放a上的s鎖。這保證了其他事務可以讀a,但在t釋放a上的s鎖之前不能對a做任何修改。排他鎖 x鎖 又稱寫鎖。若事務t對資料物件a加上x鎖,...