首頁  >  文章  >  資料庫  >  mysql進階(二十三)資料庫事務四大特性

mysql進階(二十三)資料庫事務四大特性

黄舟
黄舟原創
2017-02-11 10:49:361979瀏覽

資料庫事務四大特性

      原子性、一致性、分離性、持久性

原子性

  事務的原子性

原子性

  事務的原子性是,事務中包含的邏輯工作所做的對資料修改操作要麼全部執行,要麼完全不執行。這種特性稱為原子性。

  事務的原子性要求,如果把一個事務可看作是一個程序,它要么完整的被執行,要么完全不執行。就是說交易的操縱序列或完全應用到資料庫或完全不影響資料庫。這種特性稱為原子性。

  假如使用者在一個事務內完成了資料庫的更新,這時所有的更新對外部世界必須是可見的,或者完全沒有更新。前者稱事務已提交,後者稱事務撤消(或流產)。 DBMS必須確保由成功提交的事務完成的所有操縱在資料庫內有完全的反映,而失敗的事務對資料庫完全沒有影響。

一致性

      事務的一致性指的是在一個事務執行之前和執行之後資料庫都必須處於一致性狀態。這種特性稱為事務的一致性。假如資料庫的狀態滿足所有的完整性約束,就說該資料庫是一致的。

      一致性處理資料庫中所有語意限制的保護。例如,當資料庫處於一致性狀態S1時,對資料庫執行一個事務,在事務執行期間假定資料庫的狀態是不一致的,當事務執行結束時,資料庫處在一致性狀態S2。

分離性

      分離性指併​​發的事務是互相隔離的。即一個事務內部的操作及正在操作的資料必須封鎖起來,不被其它企圖進行修改的事務看到。

      分離性是DBMS針對併發事務間的衝突所提供的安全保證。 DBMS可以透過加鎖在並發執行的事務間提供不同層級的分離。假如並發交叉執行的事務沒有任何控制,操縱相同的共享物件的多個並發事務的執行可能引起異常情況。

      DBMS可在同時執行的事務間提供不同層級的分離。分離的層級和並發事務的吞吐量之間存在反比關係。較多事務的可分離性可能會帶來較高的衝突和較多的事務流產。流產的事務要消耗資源,這些資源必須重新被存取。因此,確保高分離等級的DBMS需要更多的開銷。 持久性

  持久性意味著當系統或媒體發生故障時,確保已提交交易的更新不能丟失。即一旦一個事務提交,DBMS保證它對資料庫中資料的改變應該是永久性的,耐得住任何系統故障。

所以,持久性主要在於DBMS的復原效能。

持久性透過資料庫備份和復原來保證。 參考資料

http://www.php.cn/

 

以上就是mysql進階(二十三)資料庫事務四大功能的內容,更多相關內容請關注PHP中文網(www. php.cn)! 🎜🎜🎜🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn