国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Mysql InnoDB事務的隔離級別

2019-11-08 20:57:00
字體:
來源:轉載
供稿:網友

MySQL InnoDB事務的隔離級別有四級,默認是“可重復讀”(REPEATABLE READ)。

未提交讀(READUNCOMMITTED)。另一個事務修改了數據,但尚未提交,而本事務中的SELECT會讀到這些未被提交的數據(臟讀);

提交讀(READCOMMITTED)。本事務讀取到的是最新的數據(其他事務提交后的)。問題是,在同一個事務里,前后兩次相同的SELECT會讀到不同的結果(不重復讀);

可重復讀(REPEATABLEREAD)。在同一個事務里,SELECT的結果是事務開始時時間點的狀態,因此,同樣的SELECT操作讀到的結果會是一致的。但是,會有幻讀現象(下文解釋);

串行化(SERIALIZABLE)。讀操作會隱式獲取共享鎖,可以保證不同事務間的互斥。

四個級別逐漸增強,每個級別解決一個問題。

讀取錯誤的種類:

臟讀,最容易理解。另一個事務修改了數據,但尚未提交,而本事務中的SELECT會讀到這些未被提交的數據;

不重復讀。解決了臟讀后,會遇到,同一個事務執行過程中,另外一個事務提交了新數據,因此本事務先后兩次讀到的數據結果會不一致;

幻讀。解決了不重復讀,保證了同一個事務里,查詢的結果都是事務開始時的狀態(一致性)。但是,如果另一個事務同時提交了新數據,本事務再更新時,就會“驚奇的”發現了這些新數據,貌似之前讀到的數據是“鬼影”一樣的幻覺。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 望奎县| 萨嘎县| 凤城市| 乳源| 汤阴县| 中方县| 东明县| 冀州市| 个旧市| 桦南县| 夹江县| 华阴市| 公安县| 德江县| 清镇市| 龙川县| 东明县| 武定县| 葫芦岛市| 常熟市| 晋宁县| 星座| 阳春市| 始兴县| 文化| 钟祥市| 通江县| 旬邑县| 惠东县| 潍坊市| 固镇县| 墨玉县| 哈巴河县| 麻城市| 阿巴嘎旗| 德惠市| 肥乡县| 临朐县| 鄂托克旗| 新闻| 宜良县|