MYSQL 事務與鎖

2022-01-17 07:28:43 字數 418 閱讀 3487

事務的特性 acid

原子性一致性

隔離性永續性

通過redolog 和 doublewrite(頁損壞的情況) 實現永續性

事務什麼時候開啟

預設自動開啟,自動提交。

通過begin;命令顯式開啟事務;通過commit;/rollback;結束事務。

事務的隔離級別

讀未提交

存在的問題:髒讀、不可重複讀、幻讀

讀已提交

存在的問題:不可重複讀(update,delete)、幻讀

可重複讀

存在的問題:幻讀(insert)

序列化存在的問題:效能太低

mysql解決可重複讀

意向鎖提高加表鎖的效率

鎖的到底是什麼?

鎖的是索引,假如是輔助索引還會鎖其對應的主鍵。

mysql事務與鎖機制 mysql事務與鎖機制

在併發下事務會容易出現的一些問題 資料更新丟失 兩個事務同時操作一條資料,乙個事務因為異常導致資料更新丟失 髒讀 乙個失誤開始讀取了某行資料,另外乙個事務已經更新了此資料但沒有能夠及時提交。這是相當危險的,因為很可能所有的操作都被回滾。不可重複讀 乙個事務對同一行資料重複讀取兩次,但是卻得到了不同的...

MySQL 事務與鎖詳解

一系列的資料庫操作,這些操作必須全部執行,否則全部不執行。例如一些和銀行賬戶訪問相關的資料庫操作,必須得保證每乙個操作得執行。由於為了加快資料庫的操作,需要資料庫支援併發,這樣就可能會產生多個事務同時操作同一張表,這樣就可能產生一些衝突。如下 既然存在這些衝突,於是下面引出事務的隔離級別概念,他們就...

mysql鎖與事務總結

未提交讀,乙個事務查詢到另乙個事務未提交資料 髒讀 提交讀,乙個事務中兩次查詢可能查出不同資料 不可重複讀 可重複讀,乙個事務中每次查詢到的資料集相同 幻讀 串性化mysql資料引擎innodb,支援事務,預設使用行鎖,行鎖開銷大但粒度小,併發處理能力高。當執行insert update delet...