Oracle 資料庫隔離級別,特性,問題和解決方法
引自:http://www.cnblogs.com/1-2-3/archive/2012/04/05/oracle-isolation-level-ora-08177.html
“……老手根本就不會照著指示去做,他邊做邊取捨,因此必須全神貫注於手上的工作,即使他沒有刻意這樣做,他的動作和機器之間也自然有一種和諧的感覺。他不需要遵照任何書面的指示,因為手中的機器給他的感覺決定他的思路和動作,同時也影響他手中的工作。所以機器和他的思想同時不斷地改變,一直到把事情做好了,他的內心才真正地安寧下來。”
“聽起來好像藝術一樣。”
——羅伯特·M.波西格 《禪與摩托車維修藝術》
- 丟失更新(lost update):兩個事務同時更新同一條資料時,會發生更新丟失。
例如:使用者A讀取學號為107的學生(學號=107,姓名=“小明”,年齡=28)
=> 使用者B讀取學號為107的學生(學號=107,姓名=“小明”,年齡=28)
=> 使用者A把姓名更改為“王小明”(學號=107,姓名=“王小明”,年齡=28)
=> 使用者B把年齡更改為33(學號=107,姓名=“小明”,年齡=33)
=> 使用者A提交(學號=107,姓名=“王小明”,年齡=28)
=> 使用者B提交(學號=107,姓名=“小明”,年齡=33)
使用者A對學生姓名的更新丟失了。
- 髒讀(dirty read):當一個事務讀取另一個事務尚未提交的修改時,產生髒讀。
例如:使用者A讀取學號為107的學生(學號=107,姓名=“小明”,年齡=28)
=> 使用者A把姓名更改為“王小明”(學號=107,姓名=“王小明”,年齡=28)
=> 使用者B讀取學號為107的學生(學號=107,姓名=“王小明”,年齡=28)
=> 使用者A撤銷更改,事務回滾(學號=107,姓名=“小明”,年齡=28)
這樣使用者B相當於讀取了一個從未存在過的資料“王小明”。如果涉及到金額的話問題更為嚴重,因為使用者B讀取了一個金額之後,很可能把這個金額與其它金額累加,再把結果儲存到彙總資料之中,這樣在月底對不上賬的時候,由於使用者A回滾了事務,資料庫內不會有任何操作記錄,這樣使用者B是何時、從哪裡讀取了錯誤資料根本無從查起。
- 不可重現的讀取(nonrepeatable read):同一查詢在同一事務中多次進行,在此期間,由於其他事務提交了對資料的修改或刪除,每次返回不同的結果。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14663377/viewspace-1059305/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE資料庫事務隔離級別Oracle資料庫
- 資料庫隔離級別資料庫
- Oracle資料庫事務隔離級別概述Oracle資料庫
- 資料庫之事務、隔離級別和併發問題資料庫
- Mysql資料庫的隔離級別MySql資料庫
- 資料庫事務隔離級別資料庫
- 資料庫事務的隔離級別及四大特性資料庫
- 資料庫事務的四大特性和隔離級別資料庫
- 資料庫事務與隔離級別資料庫
- 資料庫的四種隔離級別資料庫
- 資料庫事務及其隔離級別資料庫
- 事務、特性、隔離級別
- 資料庫學習筆記:事務的特性和隔離級別資料庫筆記
- 聊聊資料庫的事務隔離級別資料庫
- 資料庫ACID、隔離級別與MVCC資料庫MVC
- ORACLE的隔離級別Oracle
- 資料庫事務 ACID屬性、資料庫併發問題和四種隔離級別資料庫
- 檢視ORACLE事務隔離級別方法Oracle
- golang saas框架,資料庫級別隔離、讀寫分離Golang框架資料庫
- 【眼見為實】資料庫併發問題 封鎖協議 隔離級別資料庫協議
- 論 MySQL 之事務隔離級別 | 資料庫篇MySql資料庫
- MySQL資料庫中的四種隔離級別MySql資料庫
- [資料庫]事務的4種隔離級別資料庫
- MySQL資料庫引擎、事務隔離級別、鎖MySql資料庫
- 資料庫事務隔離級別分析----轉載資料庫
- 資料庫事務的四種隔離級別資料庫
- 資料庫事務的四大特性以及事務的隔離級別資料庫
- oracle隔離級別深究追根Oracle
- 資料庫事務併發產生的問題以及事務的隔離級別資料庫
- 資料庫事務與事務的隔離級別資料庫
- 資料庫系列:事務的4種隔離級別資料庫
- 資料庫事務與隔離級別示例(oracle與sql server對比)資料庫OracleSQLServer
- 事務ACID特性與隔離級別
- 事務基礎特性及隔離級別
- Oracle-事務隔離級別Oracle
- Oracle的隔離級別(Isolation Level)Oracle
- 【進階之路】詳解資料庫事物與隔離級別資料庫
- [轉帖]資料庫的快照隔離級別(Snapshot Isolation)資料庫