Rollback Segments是在你數(shù)據(jù)庫中的一些存儲(chǔ)空間,它用來臨時(shí)的保存當(dāng)數(shù)據(jù)庫數(shù)據(jù)發(fā)生改變時(shí)的先前值,
Rollback Segment主要有兩個(gè)目的:

1. 如果因?yàn)槟撤N原因或者其他用用戶想要通過ROLLBACK聲明來取消一個(gè)人的數(shù)據(jù)操作,數(shù)據(jù)就會(huì)復(fù)原到之前為改變時(shí)的值。這種情況只在transaction的過程中有效,如果用戶執(zhí)行了COMMIT命令,那么ROLLBACK SEGMENT里面的值就會(huì)標(biāo)識(shí)為失效的,數(shù)據(jù)改變就將永久化。

2. 另一個(gè)目的是當(dāng)有并發(fā)的session訪問了一個(gè)數(shù)據(jù)值改變但事務(wù)還沒有提交的表。如果一個(gè)SELECT語句開始讀取一個(gè)表同時(shí)一個(gè)事務(wù)也在修改這個(gè)表的值,那么修改前的值就會(huì)保存到rollback segment里面,SELECT語句也是從ROLLBACK SEGMENT里面讀取表的值。

 



what the hell is going on ??!!