成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一篇文章弄懂 MySQL 的事務隔離級別

新聞 數據庫運維
先簡單介紹一下MySQL中事務的概念,它是指: 用于實現某種行為的SQL語句的組合,可以是單條SQL語句,也可以是多條。

 

先簡單介紹一下MySQL中事務的概念,它是指: 用于實現某種行為的SQL語句的組合,可以是單條SQL語句,也可以是多條。 就像線程一樣,MySQL服務器允許多個事務并發執行去更新某些數據,為了保障安全,MySQL提供了四種隔離級別,用來限制不同事務之間的干擾。

四種隔離級別如下(按照級別由低到高):

  • read uncommitted(讀未提交)

  • read committed(讀已提交)

  • repeatable read(可重復讀)

  • Serializable(串行化)

接下來按照這個順序分別進行演示。

**準備工作**

由于我本地服務器上只有一個root用戶,為了后續的演示操作,所以需要再新建一個用戶testB,并授予相應權限。方便起見,下文中root、testB開啟的事務稱為A、B。

一、read uncommitted(讀未提交)

分別登錄到用戶root和testB,以表t_ss作為實驗表,通過查詢可以看到表t_ss是空的。

分別將root和testB的隔離級別設置為 read uncommitted( 讀 未提交)。

接著分別在root、testB中開啟事務A、B,然后在B中向表t_ss插入一條數據。 這時候B中的事務還沒有提交(commit),我們再在A中查表,可以看見, 即使B的事務還未提交,A中也可以查詢到事務B插入的數據。

到這大家應該都能理解 read uncommitted( 讀 未提交) 的含義了,通俗來說就是: 即使事務B沒有commit,其它事務也能讀取到事務B更新的數據,即能夠讀取事務沒有提交的數據。 這是事務隔離級別中等級最低的一個。

二、read committed(讀已提交)

將root和testB的事務隔離級別設置為 read committed(讀已提交)。

同樣開啟兩個事務,并在B中再插入一條數據,此時B事務未提交,當在A中查詢時,發現并未查詢到B新插入的數據。

當commit事務B后,A成功讀取到B插入的數據。

總結一下,在read committed(讀已提交)級別時, 其它事務只能讀取事務B提交后的數據,未提交則讀取不到。 這是大部分數據庫的默認隔離級別。

三、repeatable read(可重復讀)

將事務隔離級別設置為 repeatable read(可重復讀) ,并分別開啟事務。

A先查表,有兩條數據,然后B插入一條數據并commit,A再查表,結果還是兩條數據,但是B中查表所得結果是三條數據。(箭頭指示命令執行順序)

也就是說,當數據庫處于repeatable read(可重復讀)時, 同一個事務前后兩次所讀取的數據必須是一致的,無論事務B有沒有插入數據。 它是MySQL的默認隔離級別。

四、Serializable(串行化)

將root的隔離級別設置為 Serializable(串行化) ,開啟事務。當在事務A中查詢表t_ss且未commit時,B事務一直在等待,到達指定時間后會報錯,顯示超時。

在事務A提交后,事務B才能夠成功插入數據。

Serializable(串行化)是等級最高,要求最嚴的事務隔離級別,在這種情況下, 其它事務必須等待當前事務commit后才能執行。

以上便是四種事務隔離級別,希望能給大家帶來一點幫助。

責任編輯:張燕妮 來源: BeCoder
相關推薦

2018-10-22 12:50:20

CDN網絡內容發布網絡

2022-05-30 18:18:23

NoSQL數據庫

2022-08-03 08:17:00

Redis事務內存

2024-12-26 16:49:20

Python字典元素

2021-06-30 10:01:09

Python字典代碼

2021-06-16 10:03:37

Python案例分析Python基礎

2021-01-07 11:10:47

關鍵字

2025-01-26 15:38:11

Spring事務編程式

2020-10-09 08:15:11

JsBridge

2021-07-03 10:02:30

Python字符串瀏覽器

2018-04-09 16:35:10

數據庫MySQLInnoDB

2022-02-21 09:44:45

Git開源分布式

2023-05-12 08:19:12

Netty程序框架

2019-04-17 15:16:00

Sparkshuffle算法

2021-04-09 08:40:51

網絡保險網絡安全網絡風險

2021-06-30 00:20:12

Hangfire.NET平臺

2024-06-25 08:18:55

2017-09-05 08:52:37

Git程序員命令

2024-05-10 13:46:36

Python進制

2021-06-05 10:02:15

Python進制數據類型
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产伊人久久久 | 成人久久久 | 伊人操| 中文字幕av亚洲精品一部二部 | 雨宫琴音一区二区在线 | 午夜精品一区二区三区三上悠亚 | 日本欧美国产在线 | 日韩欧美国产精品一区二区三区 | 久久lu| 91精品导航 | 亚洲 自拍 另类 欧美 丝袜 | 欧美一级黄色片在线观看 | 免费在线一区二区 | 性色视频 | 在线观看欧美一区 | 91成人小视频 | 成人在线激情 | 日本福利在线观看 | 99re视频| av中文字幕网 | 免费观看一级特黄欧美大片 | 婷婷狠狠 | 一区二区免费 | 91传媒在线观看 | 91亚洲国产成人精品一区二三 | h视频免费看 | 国产精品二区三区 | 日韩欧美在线免费观看 | 少妇精品亚洲一区二区成人 | 日韩成人久久 | 很很干很很日 | 艹逼网| 情侣酒店偷拍一区二区在线播放 | 国产在线播 | 久久久精彩视频 | 日本精品一区二区三区在线观看视频 | 一区二区影院 | 中文字幕在线视频免费视频 | 亚洲一区电影 | 国产精品资源在线 | 亚洲精品456 |