相關資料:https://zhuanlan.zhihu.com/p/70701037 https://zhuanlan.zhihu.com/p/59061106
一、事務,
1、概念,事務是由一組SQL陳述句組成的邏輯處理單元,
2、事務的屬性(ACID),
i:原子性(atomicity):事務是最小的作業單元,整個事務中的所有操作要么全部提交成功,要么全部失敗回滾,
ii:一致性(consistency)::一個事務執行前后資料庫的完整性保持一致,
iii:隔離性(isolation):多個并發事務之間要相互隔離,
iv:持久性(durability):事務提交后,其所做的修改會永久保存到資料庫中,
3、事務的隔離級別,
i:讀未提交(Read Uncommitted):當前事務中的修改,即使沒有被提交,對其他事務也是可見的,可能導致:臟讀---事務可以讀取到未提交的資料,
ii:讀已提交(Read Committed):被讀取的資料可以被其他事務修改,可能導致:不可重復讀----在一個事務內,多次讀同一個資料,在這個事務還沒有結束時,另一個事務也訪問該同一資料,那么,在第一個事務的兩次讀
資料之間,由于第二個事務的修改,那么第一個事務讀到的資料可能不一樣,這樣就發生了在一個事務內兩次讀到的資料是不一樣的,因此稱為不可重復讀,即原始讀取不可重復,一句話
解釋:一個事務內,兩次相同的查詢,回傳了不同的資料,
iii:可重復讀(Repeatable Read):保證同一個事務中多次讀取同樣的記錄,結果是一樣的,可能導致:幻讀----一個事務T1按相同的查詢條件重新讀取以前檢索過的資料,卻發現其他事務T2插入了滿足其查詢條件的新數
據,這種現象就稱為“幻讀”,一句話解釋:事務A 讀取到了事務B提交的新增資料, MySql默認,
iv:串行化(Serializable):所有事務串行執行,避免幻讀,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/232942.html
標籤:其他
上一篇:Mysql—添加用戶并授權
