如果資料庫聲稱支援事務的操作,那麼該資料庫必須要準備以下四個特性:
列表內容
(1).原子性
原子性是指事務包含的所有對資料庫的操作要麼全部成功,要麼全部失敗,因此可以理解事務的操作如果成功就必須要完全應用到資料庫,如果操作失敗則不能對資料庫有任何的修改
(2).一致性
一致性是指事務必須使資料庫從乙個一致性狀態變換到另乙個一致性狀態,所謂一致性狀態,就是資料庫只包含成功事務提交的結果時,就說明資料庫處於一致性狀態,如果數強調內容據庫系統執行中發生故障,有些事務尚未完成就被迫中斷,這些未完成事務對資料庫所做的修改有一部分已經寫入資料庫,此時資料庫就處於一種不確定的狀態,或者說是不一致狀態
(3).隔離性
隔離性是當多個使用者併發訪問資料庫時,比如操作同一張表時,資料庫為每乙個使用者開啟的事務,不能被其他事務的操作所干擾,因此多個併發事務之間要相互隔離。
比如:對於兩個併發的事務a1和a2,如果事務a1先執行,那麼a2要等事務a1執行完後才能執行。
(4).永續性
永續性是指乙個事務一旦被提交,那麼對資料庫中的資料改變就是永久性,接下來的其他操作或資料庫故障不會丟失提交事務的操作。
比如:我們在運算元據庫時,在提交事務方法後,提示使用者事務操作完成,當我們程式執行完成直到看到提示後,就可以認定事務以及正確提交,及時這時候資料庫出現了問題,也必須要將我們的事務完全執行完成,否則就會造成我們看到提示事務處理完畢,但資料庫因為故障而沒有執行事務的重大錯誤
講一下 Spring的事務傳播特性
1.propagation required 如果存在乙個事務,則支援當前事務。如果沒有事務則開啟 2.propagation supports 如果存在乙個事務,支援當前事務。如果沒有事務,則非事 務的執行 3.propagation mandatory 如果已經存在乙個事務,支援當前事務。如果沒...
說一下Docker 一
對於提高伺服器的效能,支援輕量級的虛擬,實現開發測試上線的高度一致,團隊開發環境的協調統一,docker表現得極為出色。在功能上,我們將docker理解為乙個超輕量級的虛擬機器,它比vmware占用的資源少很多,執行速度快很多,因為它們的底層實現技術完全不同。docker就像乙個模具,我們能在作業系...
事務 了解一下
事務的隔離級別 事務隔離級別的實現 mvcc mvcc的缺點 事務的四大特性是老生常談的問題了 依次是a 原子性 c 一致性 i 隔離性 d 永續性 a事務讀到了回滾的b事務修改的資料。即b事務修改了資料,這個時候a事務讀到了修改的資料,但是b事務這個時候回滾了。a事務讀到的資料就是髒資料,稱為髒讀...