在數據庫中,事務是指一組邏輯操做單元,使數據從一種狀態變換到另外一種狀態。數據庫
爲確保數據庫中數據的一致性,事務的操做應該是流暢完成的,中間不能失敗,一旦有操做失敗,那麼回滾到開始事務的狀態。
併發
每次begin開啓一個事務後,選擇commit和rollback結束本次事務。要從新begin開啓一個新的事務。spa
存在五種問題:髒讀、不可重複讀、幻讀、第一類丟失更新、第二類丟失更新
隔離級別:不一樣的隔離級別能夠處理不一樣的併發問題
默認的隔離級別爲:repreatable read
MySQL默認狀況下不會出現幻讀和第一類丟失更新
3d
MySQL使用鎖機制來解決第二類丟失更新
悲觀鎖:版本控制
select ......for update;
樂觀鎖:使用版本控制code