Mysql事務特性

事務特性:

1、原子性:一個事務(transaction)中的所有操作,要么全部完成,要么全部不完成,不會結束在中間某個環(huán)節(jié)。事務在執(zhí)行過程中發(fā)生錯誤,會被回滾(Rollback)到事務開始前的狀態(tài),就像這個事務從來沒有執(zhí)行過一樣。
2、一致性:在事務開始之前和事務結束以后,數據庫的完整性沒有被破壞。這表示寫入的資料必須完全符合所有的預設規(guī)則,這包含資料的精確度、串聯(lián)性以及后續(xù)數據庫可以自發(fā)性地完成預定的工作。
3、隔離性:數據庫允許多個并發(fā)事務同時對其數據進行讀寫和修改的能力,隔離性可以防止多個事務并發(fā)執(zhí)行時由于交叉執(zhí)行而導致數據的不一致。事務隔離分為不同級別,包括讀未提交(Read uncommitted)、讀提交(read committed)、可重復讀(repeatable read)和串行化(Serializable)。
4、持久性:事務處理結束后,對數據的修改就是永久的,即便系統(tǒng)故障也不會丟失。

事務隔離級別

讀未提交:A事務開啟后,B事務對數據進行修改后未提交時,A事務就可以讀取到B事務修改的數據,即:臟讀
讀已提交:A事務開啟后,B事務對數據進行修改并提交后,A事務可以讀取到B事務修改的數據,即:不可重復讀
可重復讀:A事務開啟后,無論其他事物對數據做何修改A事務讀取到的數據都是一致的,即:幻讀
串行化:每個事物都排隊執(zhí)行

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容