Mysql事務 學習筆記2

2021-10-10 12:10:29 字數 721 閱讀 2689

lbcc也就是基於鎖

先介紹lbcc也就是鎖,官方從很多方面來給鎖分類,最大類可分表鎖,行鎖

表鎖與行鎖的區別:

鎖定粒度:表鎖》行鎖

加鎖效率:表鎖》行鎖

衝突概率:表鎖》行鎖

併發效能:表鎖《行鎖

在innodb中實現了兩個標準的行級鎖,可以看成讀寫鎖

s共享鎖(讀鎖):其他事務可以讀,也可以繼續加共享鎖。

語法:在查詢行資料語句後加上lock in share mode; 釋放:commit,rollback;

x排他鎖(寫鎖):一旦加了排他鎖,只有自己可以進行增刪改查,其他事務無法進行任何操作,並且與其他鎖不能共存。

語法:在查詢行資料語句後加上for update; 釋放:commit,rollback;

意向鎖是行表鎖可以共存的表鎖,又分為意向共享鎖和意向排他鎖。

意向共享鎖:表示事務準備給資料行加共享鎖之前,獲取此表的is鎖。

意向排他鎖:提前獲取此表的ix鎖。

注意:意向鎖是由資料引擎自己維護的,無法手動操作意向鎖,在為資料行加共享 / 排他鎖之前,inoodb 會先獲取該資料行所在表的對應意向鎖。

記錄鎖:等值查詢,精確匹配。

間隙鎖:只存在於rr隔離級別,用於範圍查詢的鎖,可以加排他鎖

事務學習筆記(2)

springboot使用註解進行事務的是宣告式事務 有時候我們需要判斷事務是否執行成功 這時候宣告式事務就不夠了 就需要程式設計式事務 author chenlinhang description todo date 下午 10 19 2019 4 13 0013 param return bool...

學習Mysql事務筆記

l事務的概念 事務指邏輯上的一組操作,組成這組操作的各個單元,要不全部成功,要不全部不成功。例如 a b轉帳,對應於如下兩條sql語句 update from account set money money 100 where name b update from account set money...

Mysql 事務學習筆記

當乙個人在update這個資料,另乙個人在select查詢這個資料的時候.會產生一種資料混亂,應運產生的鎖.鎖策略,就是在鎖的開銷和資料的安全性做出平衡.大部分商業資料庫並沒有提供特別多選擇,只是在表上加上行級鎖.事務是一組原子性的sql查詢,如果能執行查詢全部語句,那麼查詢全部,如果又一條語句不成...