transaction(事務),有四個特性:原子性、一致性、隔離性、永續性,在這其中,最重要的一致性由原子性、隔離性、永續性來保證。
隔離性分為:
未提交讀(ru)
已提交讀(rc)
可重複讀(rr)
序列化(serializable)
每個級別都會解決不同的問題,通常是:髒讀、不可重複讀和幻讀
髒讀不可重複讀
幻讀ru√√
√rc×√
√rr××
×serializble××
×在mysql中,rr級別不會導致幻讀,如在使用預設select時,mysql使用mvcc機制保證不會幻讀
原子性:事務是乙個完整的操作,事務的各步驟是不可再分割的,要麼都執行,要麼都不執行
一致性:當事務完成的時候,資料必須處於一致狀態
隔離性:對資料進行修改的所有事務是不會被其它所打擾,事務是獨立的,不依賴或影響其它事務
永續性:事務完成後,對資料庫的修改被永久儲存,事務日誌能夠保持事務的永續性
資料庫事務
事件是訪問並可能更新各種資料項的乙個程式執行單元。事件由事務開始與事務結束之間執行的全體操作組成。為了保證資料完整性,資料庫系統需要維護事務的以下性質 原子性 atomicity 事務中的操作要麼全部成功,要麼全部失敗。一致性 consistency 事務執行前後要保持資料庫的一致性。隔離性 iso...
資料庫 事務
資料庫事務 database transaction 是指作為單個邏輯工作單元執行的一系列操作。事務處理可以確保除非事務性單元內的所有操作都成功完成,否則不會永久更新面向資料的資源。通過將一組相關操作組合為乙個要麼全部成功要麼全部失敗的單元,可以簡化錯誤恢復並使應用程式更加可靠。乙個邏輯工作單元要成...
資料庫事務
這段時間面試,由於基礎不是特別好,遇到一些要筆試的公司。就會表示出來 今天有人問我,資料庫事務 是什麼。我只感覺十分熟悉。但是又說不出所以然。回來找了一下,現在整理記錄 1 定義 資料庫事務 database transaction 是指作為單個邏輯工作單元執行的一系列操作。事務處理可以確保除非事務...