資料庫之事務與常見故障

2022-07-28 18:57:20 字數 854 閱讀 6357

所謂事務是使用者定義的乙個資料操作序列,這些操作要麼全做要麼全部做,是乙個不可分割的工作單位。例如:在關聯式資料庫中,乙個事務可以是一條sql語句、一組sql語句或是整個程式。

乙個程式包含多個事務

1.原子性

2.一致性

3.隔離性

4.持續性

事務通常是以begin transaction開始,以commit或roll結束。一、事務內部的故障

事務內部的更多的故障是非預期的,是不能由應用程式處理。如運算溢位、併發事務發生死鎖而被選中撤銷該事物、違反了某些完整性限制。事務故障僅指這類非預期的故障

這類恢復操作稱為事務撤銷(undo)

二、系統故障

情況一、發生系統故障時,一些尚未完成的事務的結果可能已送入物理資料庫,從而造成資料庫可能處於不正確的狀態。為保證資料i一致性,需要清除這些事務對資料庫的所有修改。系統恢復子系統必須在系統重新啟動時,讓所有非正常終止的事務回滾,強行撤銷(undo)

情況二、發生故障系統,有些已完成的事務可能有一部分甚至全部留在快取區中,尚未寫回到磁碟上的物理資料庫中,系統故障使得這些事務對資料庫的修改部分或全部丟失,這也會使資料庫處於不一致的狀態,因此應將這些事務已經提交的結果重新寫入資料庫。在系統重新啟動後,恢復子系統需要撤銷所有未完成的事務外,還需要重做(redo)所有已提交的事務

終結的說:沒有提交的要撤銷(undo),已經提交的要重做(redo)

####三、介質故障

#####系統故障常稱為軟故障(soft crash),介質故障常稱為硬故障(hard crash)。硬故障指外存故障,如磁碟損壞、磁頭碰撞、瞬間強磁場干擾等。這類故障破壞資料庫或部分資料庫。並影響正在訪問這部分資料的所有事務。這類故障畢業前兩類故障發生的可能性小,但破壞性最大

資料庫之事務

事務是併發控制的單位,是使用者定義的乙個操作序列。這些操作要麼都做,要麼都不做,是個不可分割的工作單位。如果某一事務成功,則在該事務中進行的所有資料更改均會提交,成為資料庫中永久的組成部分。如果事務遇到錯誤,則必須取消或回滾,所有資料均被更改清除。1 原子性 atomicity 事務是資料庫的邏輯工...

資料庫之事務

概述 事務一般是指要做的或所做的事情。在計算機術語中是指訪問並可能更新資料庫中各種資料項的乙個程式執行單元 unit 特徵 事務具有4個基本特徵,分別是 原子性 atomicity 一致性 consistency 隔離性 isolation 永續性 duration 簡稱acid。原子性事務的原子性...

資料庫 之 事務

本文將以mysql為主分析 在mysql中只有使用了innodb資料庫引擎的資料庫或表才支援事務 事務處理可以用來維護資料庫的完整性,保證成批的sql語句要麼全部執行,要麼全部不執行 事務用來管理insert update delete語句。事務必須滿足4個條件acid a atomicity 原子...