MySQL中的行鎖實現有兩種方法:鎖定讀和排他寫。
鎖定讀(Shared Lock):當一個事務執行了一條SELECT語句,并使用了LOCK IN SHARE MODE或者FOR SHARE子句時,會對讀取的行進行鎖定。其他事務也可以讀取該行,但是不能對其進行修改直到該事務釋放鎖定。
排他寫(Exclusive Lock):當一個事務執行了UPDATE、DELETE或INSERT語句,并使用了FOR UPDATE子句時,會對所修改的行進行排他鎖定。其他事務不能讀取、修改或刪除該行直到該事務釋放鎖定。
通過使用這兩種行鎖實現,可以有效地控制并發事務對數據庫中數據的訪問和修改,確保數據的一致性和完整性。