日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql isolation level_MySQL数据库事务隔离级别(Transaction Isolation Level)

發布時間:2025/4/16 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql isolation level_MySQL数据库事务隔离级别(Transaction Isolation Level) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天在學習JDBC的時候看到了關于MySql的事務的隔離級別的問題,感覺內容挺高級的,所以記錄一篇文章,以備后面使用。

數據庫隔離級別有四種,應用《高性能mysql》一書中的說明:

然后說說修改事務隔離級別的方法:

1.全局修改,修改mysql.ini配置文件,在最后加上

1 #可選參數有:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE.2 [mysqld]3 transaction-isolation = REPEATABLE-READ

這里全局默認是REPEATABLE-READ,其實MySQL本來默認也是這個級別

2.對當前session修改,在登錄mysql客戶端后,執行命令:

set session transaction isolation level read uncommitted;

要記住mysql有一個autocommit參數,默認是on,他的作用是每一條單獨的查詢都是一個事務,并且自動開始,自動提交(執行完以后就自動結束了,如果你要適用select for update,而不手動調用 start transaction,這個for update的行鎖機制等于沒用,因為行鎖在自動提交后就釋放了),所以事務隔離級別和鎖機制即使你不顯式調用start transaction,這種機制在單獨的一條查詢語句中也是適用的,分析鎖的運作的時候一定要注意這一點

再來說說鎖機制:

共享鎖:由讀表操作加上的鎖,加鎖后其他用戶只能獲取該表或行的共享鎖,不能獲取排它鎖,也就是說只能讀不能寫

排它鎖:由寫表操作加上的鎖,加鎖后其他用戶不能獲取該表或行的任何鎖,典型是mysql事務中

start transaction;

select * from user where userId = 1 for update;

執行完這句以后

1)當其他事務想要獲取共享鎖,比如事務隔離級別為SERIALIZABLE的事務,執行

select * from user;

將會被掛起,因為SERIALIZABLE的select語句需要獲取共享鎖

2)當其他事務執行

select * from user where userId = 1 for update;

update user set userAge = 100 where userId = 1;

也會被掛起,因為for update會獲取這一行數據的排它鎖,需要等到前一個事務釋放該排它鎖才可以繼續進行

鎖的范圍:

行鎖:對某行記錄加上鎖

表鎖:?對整個表加上鎖

這樣組合起來就有,行級共享鎖,表級共享鎖,行級排他鎖,表級排他鎖

下面來說說不同的事務隔離級別的實例效果,例子使用InnoDB,開啟兩個客戶端A,B,在A中修改事務隔離級別,在B中開啟事務并修改數據,然后在A中的事務查看B的事務修改效果(兩個客戶端相當于是兩個連接,在一個客戶端中的修改參數變量的值是不會影響到另外的一個客戶端的):

1.READ-UNCOMMITTED(讀取未提交內容)級別

1)A修改事務級別并開始事務,對user表做一次查詢

2)B更新一條記錄

3)此時B事務還未提交,A在事務內做一次查詢,發現查詢結果已經改變

4)B進行事務回滾

5)A再做一次查詢,查詢結果又變回去了

6)A表對user表數據進行修改

7)B表重新開始事務后,對user表記錄進行修改,修改被掛起,直至超時,但是對另一條數據的修改成功,說明A的修改對user表的數據行加行共享鎖(因為可以使用select)

可以看出READ-UNCOMMITTED隔離級別,當兩個事務同時進行時,即使事務沒有提交,所做的修改也會對事務內的查詢做出影響,這種級別顯然很不安全。但是在表對某行進行修改時,會對該行加上行共享鎖

2. READ-COMMITTED(讀取提交內容)

1)設置A的事務隔離級別,并進入事務做一次查詢

2)B開始事務,并對記錄進行修改

3)A再對user表進行查詢,發現記錄沒有受到影響

4)B提交事務

5)A再對user表查詢,發現記錄被修改

6)A對user表進行修改

7)B重新開始事務,并對user表同一條進行修改,發現修改被掛起,直到超時,但對另一條記錄修改,卻是成功,說明A的修改對user表加上了行共享鎖(因為可以select)

READ-COMMITTED事務隔離級別,只有在事務提交后,才會對另一個事務產生影響,并且在對表進行修改時,會對表數據行加上行共享鎖

3. REPEATABLE-READ(可重讀)

1)A設置事務隔離級別,進入事務后查詢一次

2)B開始事務,并對user表進行修改

3)A查看user表數據,數據未發生改變

4)B提交事務

5)A再進行一次查詢,結果還是沒有變化

6)A提交事務后,再查看結果,結果已經更新

7)A重新開始事務,并對user表進行修改

8)B表重新開始事務,并對user表進行修改,修改被掛起,直到超時,對另一條記錄修改卻成功,說明A對表進行修改時加了行共享鎖(可以select)

REPEATABLE-READ事務隔離級別,當兩個事務同時進行時,其中一個事務修改數據對另一個事務不會造成影響,即使修改的事務已經提交也不會對另一個事務造成影響。

在事務中對某條記錄修改,會對記錄加上行共享鎖,直到事務結束才會釋放。

4.SERIERLIZED(可串行化)

1)修改A的事務隔離級別,并作一次查詢

2)B對表進行查詢,正常得出結果,可知對user表的查詢是可以進行的

3)B開始事務,并對記錄做修改,因為A事務未提交,所以B的修改處于等待狀態,等待A事務結束,最后超時,說明A在對user表做查詢操作后,對表加上了共享鎖

SERIALIZABLE事務隔離級別最嚴厲,在進行查詢時就會對表或行加上共享鎖,其他事務對該表將只能進行讀操作,而不能進行寫操作。

喜歡 (1)or分享 (0)

總結

以上是生活随笔為你收集整理的mysql isolation level_MySQL数据库事务隔离级别(Transaction Isolation Level)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黑丝美女一区二区 | 永久在线观看 | 九九在线观看高清免费 | 香蕉视频在线网站 | 欧美精品二区三区四区免费看视频 | 久久久久久久国产精品视频 | 91国产免费视频 | 91在线观看.| 人人人草| 免费观看黄色网 | 天堂成人网 | 最新中文av | av资源共享| 精品人妻一区二区三区浪潮在线 | 日韩欧美高清视频 | 亚洲精品性 | 免费网站在线观看人数在哪动漫 | 国内精品人妻无码久久久影院蜜桃 | av网站在线观看免费 | 日韩一区二区三区网站 | 奇米影视999| 中文字幕无码日韩专区免费 | 亚洲一区亚洲二区 | 在线视频毛片 | 野外一级片| 天天射综合网站 | 香蕉视频在线视频 | 精品久久久久久久久久久久久久久久 | 亚洲欧洲另类 | 99在线精品观看 | 免费在线观看成人 | 毛片在线免费播放 | 奇米影视第四色777 波多野结衣一区二区三区免费视频 | 亚洲精品一线二线三线 | 欧美国产三级 | 亚洲无av | xxx69美国| 中国美女黄色 | 小毛片网站| 性の欲びの女javhd | 韩日视频一区 | 精品久久一区二区 | 樱花视频在线观看 | 欧美在线网站 | www av| 男男上床视频 | 国产aⅴ精品一区二区三区久久 | 亚洲中文字幕97久久精品少妇 | 我要色综合网 | 亚洲区一区二 | 日韩在线视频网站 | 黄色大片免费网站 | 欧美私人影院 | 日本少妇性高潮 | 91丨国产丨白丝 | 九一av| 三级大片在线观看 | 久久国产精品精品国产 | www国产成人 | 特黄三级又爽又粗又大 | 在线亚洲免费 | 韩国一区二区三区在线观看 | 日韩视频在线观看 | 精品一性一色一乱农村 | 少妇无套高潮一二三区 | 亚洲国产日韩欧美在线观看 | 99国产精品国产精品九九 | 高清久久久久久 | 在线观看日本视频 | 操人视频在线观看 | 狠狠夜夜| 久久国产视频一区 | 免费在线精品视频 | 久久久久久久久久久久久av | 成年人视频在线免费看 | 亚洲熟妇av乱码在线观看 | 韩国av免费在线观看 | 男女操操 | 国产亚洲成av人在线观看导航 | 日本羞羞网站 | 老司机在线观看视频 | 特黄特色大片免费 | 国产精品剧情 | 丝袜天堂| 亚洲 精品 综合 精品 自拍 | 超碰97成人 | 97视频一区二区三区 | 男女做爰猛烈刺激 | 精品无码久久久久久久 | 强开小受嫩苞第一次免费视频 | 欧美亚洲不卡 | 欧美日韩在线中文字幕 | 婷婷丁香在线 | 尤物视频在线观看国产 | 色婷婷aⅴ一区二区三区 | 色开心 | 久久亚洲国产成人精品性色 | 大黑人交xxx极品hd | 亚洲欧洲精品一区二区 |