MySQL的存盤引擎InnoDB支持事務,MyISAM不支持事物
資料庫事務的四大特性(ACID)
- 原子性(atomic) 原子性是指事務包含的所有操作要么全部成功,要么全部失敗回滾,這和前面兩篇博客介紹事務的功能是一樣的概念,因此事務的操作如果成功就必須要完全應用到資料庫,如果操作失敗則不能對資料庫有任何影響,
- 一致性(consistency) 一致性是指事務必須使資料庫從一個一致性狀態變換到另一個一致性狀態,也就是說一個事務執行之前和執行之后都必須處于一致性狀態,
拿轉賬來說,假設用戶A和用戶B兩者的錢加起來一共是5000,那么不管A和B之間如何轉賬,轉幾次賬,事務結束后兩個用戶的錢相加起來應該還得是5000,這就是事務的一致性,
- 隔離性(isolation) 隔離性是當多個用戶并發訪問資料庫時,比如操作同一張表時,資料庫為每一個用戶開啟的事務,不能被其他事務的操作所干擾,多個并發事務之間要相互隔離,
- 持久性(durability) 持久性是指一個事務一旦被提交了,那么對資料庫中的資料的改變就是永久性的,即便是在資料庫系統遇到故障的情況下也不會丟失提交事務的操作,
MySQL中事務的隔離級別:

- 未提交讀:讀尚未提交的資料
- 已提交讀:讀取已經提交的資料(oracle默認)
- 可重復讀:保證同一事務多次讀取同樣記錄的結果一致(MySQL默認)
- 串行化:每次讀取都獲得表級共享鎖,讀寫相互阻塞
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/105040.html
標籤:MySQL
上一篇:MySQL資料庫基礎筆記
