數據庫事務的四個特性

  • 一.什麼是事務html

    事務是應用程序中一系列邏輯相關的操做,全部操做必須成功完成,不然在每一個操做中所做的全部更改都會被撤消。也就是事務具備原子性:一個事務中的一系列的操做要麼所有成功,要麼一個都不作。
    事務的結束有兩種,當事務中的因此步驟所有成功執行時,事務提交。若是其中一個步驟失敗,將發生回滾操做,撤消以前的全部操做。
    在mysql的執行引擎當中只有innoDB支持事務,能夠經過 「show engines;」查看。 mysql

  • 二.事務的 ACIDweb

    事務具備四個特徵:原子性( Atomicity )、一致性( Consistency )、隔離性( Isolation )和持久性( Durability )。這四個特性簡稱爲 ACID 特性。
    1 、原子性
    事務是數據庫的邏輯工做單位,不可分割,事務中包含的各操做要麼都作,要麼都不作
    2 、一致性
    事務執行的結果必須是使數據庫從一個一致性狀態變到另外一個一致性狀態。所以當數據庫只包含成功事務提交的結果時,就說數據庫處於一致性狀態。若是數據庫系統 運行中發生故障,有些事務還沒有完成就被迫中斷,這些未完成事務對數據庫所作的修改有一部分已寫入物理數據庫,這時數據庫就處於一種不正確的狀態,或者說是 不一致的狀態。
    3 、隔離性
    一個事務的執行不能其它事務干擾。即一個事務內部的操做及使用的數據對其它併發事務是隔離的,併發執行的各個事務之間不能互相干擾。 事務的隔離級別有4級,能夠查看這篇博客,關於MySQL的事務處理及隔離級別
    4 、持續性
    也稱永久性,指一個事務一旦提交,它對數據庫中的數據的改變就應該是永久性的,不能回滾。接下來的其它操做或故障不該該對其執行結果有任何影響。 sql

如今的數據庫運用當中,有些應用是對事務要求很低的,Nosql數據庫就是對事務沒有要求的,瞭解NoSql能夠查看http://blog.csdn.net/chenchaofuck1/article/details/51461529數據庫