1. 程式人生 > >事務ACID特性

事務ACID特性

 所謂事務,它是一個操作序列,這些操作要麼都執行,要麼都不執行,它是一個不可分割的工作單位。例如,銀行轉帳工作:從一個帳號扣款並使另一個帳號增款,這兩個操作要麼都執行,要麼都不執行。

  資料庫事務必須具備ACID特性,ACID是Atomic(原子性)、Consistency(一致性)、Isolation(隔離性)和Durability(永續性)的英文縮寫。

  原子性:指整個資料庫事務是不可分割的工作單位。只有使據庫中所有的操作執行成功,才算整個事務成功;事務中任何一個SQL語句執行失敗,那麼已經執行成功的SQL語句也必須撤銷,資料庫狀態應該退回到執行事務前的狀態。

  一致性:指資料庫事務不能破壞關係資料的完整性以及業務邏輯上的一致性。例如對銀行轉帳事務,不管事務成功還是失敗,應該保證事務結束後ACCOUNTS表中Tom和Jack的存款總額為2000元。

  隔離性:指的是在併發環境中,當不同的事務同時操縱相同的資料時,每個事務都有各自的完整資料空間。由併發事務所做的修改必須與任何其他併發事務所做的修改隔離。事務檢視資料更新時,資料所處的狀態要麼是另一事務修改它之前的狀態,要麼是另一事務修改它之後的狀態,事務不會檢視到中間狀態的資料

  永續性:指的是隻要事務成功結束,它對資料庫所做的更新就必須永久儲存下來。即使發生系統崩潰,重新啟動資料庫系統後,資料庫還能恢復到事務成功結束時的狀態。

  事務的(ACID)特性是由關係資料庫管理系統(RDBMS,資料庫系統)來實現的。資料庫管理系統採用日誌來保證事務的原子性、一致性和永續性。日誌記錄了事務對資料庫所做的更新,如果某個事務在執行過程中發生錯誤,就可以根據日誌,撤銷事務對資料庫已做的更新,使資料庫退回到執行事務前的初始狀態。

  資料庫管理系統採用鎖機制來實現事務的隔離性。當多個事務同時更新資料庫中相同的資料時,只允許持有鎖的事務能更新該資料,其他事務必須等待,直到前一個事務釋放了鎖,其他事務才有機會更新該資料。

相關推薦

資料庫事務ACID特性

文章目錄詳解1. 原子性2. 一致性3. 隔離性4. 永續性 ACID特性 資料庫管理系統中事務(transaction)的四個特性(分析時根據首字母縮寫依次解釋):原子性(Atomicity)、一致

事務ACID特性

 所謂事務,它是一個操作序列,這些操作要麼都執行,要麼都不執行,它是一個不可分割的工作單位。例如,銀行轉帳工作:從一個帳號扣款並使另一個帳號增款,這兩個操作要麼都執行,要麼都不執行。   資料庫事務必須具備ACID特性,ACID是Atomic(原子性)、Consistency(一致性)、Isolation(

mysql淺談--事務ACID特性

mysql   MySQL 是最流行的關係型資料庫管理系統,在 WEB 應用方面 MySQL 是最好的 RDBMS(Relational Database Management System:關係資料庫管理系統)應用軟體之一。 mysql結構            如上圖所示,可分為使用者連線執行

轉載:oracle事務ACID特性

pan 操作 個數 comm ora com 管理系統 物理 更新數據 事務具有四個特征(ACID):原子性( Atomicity )指整個數據庫事務是不可分割的工作單位。只有使據庫中所有的操作執行成功,才算整個事務成功;事務中任何一個SQL語句執行失敗,那麽已經執行成功的

python事務四大特性ACID

完成 所有 特性 事務提交 失敗 數據庫 原子性 數據操作 允許 1.原子性 整個事務中的所有操作要麽全部提交成功,要麽全部失敗回滾,對於一個事務來說,不可能只執行其中的一部分操作 2.一致性 一致性就是在沒有提交事務前,不管理對數據操作多少次,真實的數據都不會改動,只有提

事務特性 ACID

1. 事務的ACID 資料庫的事務必須具備ACID特性,ACID是指 Atomic(原子性)、Consistensy(一致性)、Isolation(隔離型)和Durability(永續性)的英文縮寫。 原子性(Atomicity) 事務包裝的一組sql,要麼都執行成功,要麼都

談談MySQL InnoDB儲存引擎事務ACID特性

在執行purge過程中,InnoDB儲存引擎首先從history list中找到第一個需要被清理的記錄,這裡為trx1,清理之後InnoDB儲存引擎會在trx1所在的Undo page中繼續尋找是否存在可以被清理的記錄,這裡會找到事務trx3,接著找到trx5,但是發現trx5被其他事務所引用而不能清理,故再

資料庫事務四大特性————ACID

ACID-----A:Atomicity -原子性     C:Consistency -一致性     I:Isolation -隔離性    D:Durability - 永續性事務:事物(transaction)是由一些列操作序列構成的執行單元,這些單元要麼都做,要麼不

深入學習MySQL事務ACID特性的實現原理

隔離級別 bin redo log atomic 這一 版本 等等 star 不變 原文:深入學習MySQL事務:ACID特性的實現原理事務是MySQL等關系型數據庫區別於NoSQL的重要方面,是保證數據一致性的重要手段。本文將首先介紹MySQL事務相關的基礎概念,然後介紹

什麼是事務事務ACID特性

一.什麼是事務 事務是應用程式中一系列嚴密的操作,所有操作必須成功完成,否則在每個操作中所作的所有更改都會被撤消。也就是事務具有原子性,一個事務中的一系列的操作要麼全部成功,要麼一個都不做。 事務的結束有兩種,當事務中的所以步驟全部成功執行時,事務提交。如果其中一個步驟失

深入理解大資料之——事務及其ACID特性

目錄 事務簡介 事物的定義 事務的目的 事務的狀態 事務的ACID屬性 ACID簡介 原子性(Atomicity) 一致性(C

事務特性

沒有 完整性 屬性 整體 需要 -1 arc 修改 數據庫的操作 事務應該具有4個屬性(ACID): 原子性(A):事務作為一個整體被執行,包含在其中的對數據庫的操作要麽全部被執行,要麽都不執行。 一致性(C):事務應確保數據庫的狀態從一個一致狀態轉變為另一個一致狀態。一

什麽是事務事務特性事務隔離級別、spring事務傳播特性

ons pri table 產生 serializa support enc 不一致 修改 1.什麽是事務: 事務是程序中一系列嚴密的操作,所有操作執行必須成功完成,否則在每個操作所做的更改將會被撤銷,這也是事務的原子性(要麽成功,要麽失敗)。 2.事務特性: 事務特性分為

事務特性和隔離級別

持久性 atom gre 永久 commit nco 持久 問題 city 1.事務的特性ACID 1)原子性(Atomicity)原子性是指事務是一個不可分割的工作單位,事務中的操作要麽都發生,要麽都不發生。 2)一致性(Consistency)一個事務中,事務前後

講一下 Spring的事務傳播特性

edit span 特性 bsp red rop man tor supported 1. PROPAGATION_REQUIRED: 如果存在一個事務,則支持當前事務。如果沒有事務則開啟 2. PROPAGATION_SUPPORTS: 如果存在一個事務,支持當

資料庫事務特性及隔離級別

一、事務      事務(Transaction)是併發控制的基本單位。所謂的事務,它是一個操作序列,這些操作要麼都執行,要麼都不執行,它是一個不可分割的工作單位。而這些邏輯工作單元需要具有原子性,  一致性,隔離性和永續性四個屬性,統稱為ACID特性。 二、事務的4個基本特

python-----事務特性

事務的特性? 1、原子性(Atomicity):事務中的全部操作在資料庫中是不可分割的,要麼全部完成,要麼均不執行。 2、一致性(Consistency):幾個並行執行的事務,其執行結果必須與按某一順序序列執行的結果相一致。 3、隔離性(Isolation):事務的執行不受其他事

資料庫事務特性事務隔離級別

                             資料庫事務的特性與隔離級別 事務     事務簡單的理解就是要在

acid特性

1、原子性 原子性是指事務是一個不可再分割的工作單元,事務中的操作要麼都發生,要麼都不發生。 2、一致性 一致性是指在事務開始之前和事務結束以後,資料庫的完整性約束沒有被破壞。這是說資料庫事務不能破壞關係資料的完整性以及業務邏輯上的一致性。 3、隔離性 多個事務併發訪問時,事務之

資料庫的ACID特性

四大特性 原子性:一個事務(transaction)中的所有操作,要麼全部完成,要麼全部不完成,不會結束在中間某個環節。事務在執行過程中發生錯誤,會被恢復(Rollback)到事務開始前的狀態,就像這個事務從來沒有執行過一樣。。 一致性:在事務開始之前和事務結束以後,資料庫的