MySQL事务的特性
生活随笔
收集整理的這篇文章主要介紹了
MySQL事务的特性
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
事務具有很嚴格的定義,必須同時滿足4個特征
原子性、一致性、隔離性、持久性,也就是人們常說的ACID標準
原子性——Atomicity
原子性,是指一個事務必須被視為,一個不可分割的最小工作單元,只有事務中所有的數據庫操作都執行成功,才算整個事務執行成功
事務中,如果有任何一個SQL語句執行失敗,已經執行成功的SQL語句,也必須撤銷,數據庫的狀態退回到執行事務之前的狀態
一致性——Consistency
一致性,是指事務將數據庫,從一種狀態轉變為下一種一致的狀態
比如,在表中有一個字段為姓名,具有唯一約束,即姓名不能重復,如果一個事務對姓名進行了修改,使姓名變得不唯一了,就破壞了事務的一致性要求
如果,事務中的某個動作失敗了,系統可以自動撤銷事務,返回初始化的狀態
隔離性——Isolation
隔離性,又稱為并發控制、可串行化、鎖等
當多個用戶并發訪問數據庫時,數據庫為每一個用戶開啟的事務,不能被其他事務的操作數據所干擾,多個并發事務直接要相互隔離
持久性——Durability
持久性,是指事務一旦提交,所做的修改機會永久保存到數據庫中,即使,數據庫發生故障也不應該對其有任何影響
注意,事務的持久性不能做到100%的持久,只能從事務本身的角度來保證持久性,一些外部原因可能導致數據庫發生故障,比如,硬盤損壞,那么所有提交的數據可能都會丟失
總結
以上是生活随笔為你收集整理的MySQL事务的特性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL事物的概念
- 下一篇: MySQL事务的提交