MySQL常用的鎖機制有兩種,分別是共享鎖和排它鎖。
共享鎖是指多個用戶可以同時讀取同一份數據,但不能進行修改。當某個事務對數據進行共享鎖的讀取時,其他事務也可以對這份數據進行共享鎖的讀取,但不能進行排它鎖的修改。
SELECT * FROM `table` WHERE id=1 LOCK IN SHARE MODE;
上述代碼對id為1的數據行進行共享鎖的讀取。
排它鎖是指只有一個用戶可以對數據進行讀取和修改,其他用戶不能對該數據進行任何操作。當某個事務對數據進行排它鎖的寫入時,其他事務無法對這份數據進行任何操作。
UPDATE `table` SET name='new_name' WHERE id=1 FOR UPDATE;
上述代碼對id為1的數據行進行排它鎖的寫入。
在實際開發中,需要根據具體情況選擇合適的鎖機制,以保證數據的完整性和并發性。