1. 程式人生 > >mysql事物

mysql事物

mysql

標題索引


  • 事物作用

  • 事物流程

  • 隔離級別


事物作用

事物是確保數據庫系統數據的完整性的功能,如現在互聯網行業支付業務,不管服務器出於什麽原因異常中斷,客戶要麽不支付成功要麽支付不成功,支付成功數據庫金額即會發生變化,支付不成功客戶的金額就不發生變化,確保了交易業務的穩定性。支持事物的引擎必須滿足ACID,滿足ACID後才能滿足事物,另外事物的回滾或恢復主要靠事物日誌來完成,ACID含義分別如下:

A:atomicity(原子性):整個事物中所有的操作為命令執行最小單元,全部執行、執行一半失敗回滾或失敗回滾;

C:consistency(一致性):數據庫從一個狀態轉化為另外一個狀態,狀態在轉化前和轉換後一致;

I:isolation(隔離性):一個事物所做出的操作在提交之前,是不能被其他所見,因此隔離就出現多種隔離級別,具體包括read-uncommitted讀為提交、read-committed讀提交、repeatable-read可重復讀和serializable串行化;

D:durability(持久性):一旦事物提交,所做的會永久性保存數據庫中。

事物流程

事物的工作流程具體可見下圖

技術分享圖片

圖1-1 事物工作流程



mysql事物