資料庫鎖機制

2022-08-11 07:18:09 字數 455 閱讀 3258

併發控制

鎖當併發事務同時訪問乙個資源時,有可能導致資料不一致,因此需要一種機制來將資料訪問順序化,以保證資料庫資料的一致性。鎖就是其中的一種機制

dml鎖用於保護資料的完整性,其中包括行級鎖(tx鎖),表級鎖(tm鎖)。ddl鎖用於保護資料庫物件的結構,如表,索引等的結構定義,其中包括排他ddl鎖,共享ddl鎖,可中斷解析鎖

innodb引擎中既支援行鎖也支援表鎖,那麼什麼時候會鎖住整張表,什麼時候鎖住一行??

避免死鎖

共享鎖和排他鎖

1. 共享鎖

2. 排他鎖

3. 意向鎖

意向鎖是innodb自動加的,不需要使用者干預

總結對於insert,update,delete,innodb會自動給涉及到的資料加排他鎖;對於一般的select語句,innodb不會加任何鎖,事務可以通過以下語句給顯式加上共享鎖或排他鎖

資料庫鎖機制

這段時間由於開發專案,重新學習了資料庫的併發控制和鎖機制。資料庫就是通過鎖機制來解決併發問題的。主要就是兩種鎖,共享鎖和排他鎖 也叫獨佔鎖 在執行select語句的時候需要給操作物件 表或者一些記錄 加上共享鎖,但加鎖之前需要檢查是否有排他鎖,如果沒有,則可以加共享鎖 乙個物件上可以加n個共享鎖 否...

資料庫鎖機制

這段時間由於開發專案,重新學習了資料庫的併發控制和鎖機制。資料庫就是通過鎖機制來解決併發問題的。主要就是兩種鎖,共享鎖和排他鎖 也叫獨佔鎖 在執行select語句的時候需要給操作物件 表或者一些記錄 加上共享鎖,但加鎖之前需要檢查是否有排他鎖,如果沒有,則可以加共享鎖 乙個物件上可以加n個共享鎖 否...

資料庫鎖機制

資料庫就是通過鎖機制來解決併發問題的。主要就是兩種鎖,共享鎖和排他鎖 也叫獨佔鎖 在執行select語句的時候需要給操作物件 表或者一些記錄 加上共享鎖,但加鎖之前需要檢查是否有排他鎖,如果沒有,則可以加共享鎖 乙個物件上可以加n個共享鎖 否則不行。共享鎖通常在執行完select語句之後被釋放,當然...