我们大致概括为三个目的:
(1)事务回滚:当一个用户发了一些DML语句之后改了主意使用ROLLBACK语句回滚了他所作的事务,此时Oracle服务器就会将还原段中的原始数据回写到原来的数据行中。
(2)事务恢复:如果当事务正在进行期间实例崩溃了,当数据库再次打开时Oracle服务器就要还原(回滚)所有没有提交的变化。这种还原是事务恢复的一部分。要使恢复真正的成为可能,写到还原段上得变化就要受到联机重做日志文件的保护。
(3)读一致性:当事务进行期间,数据库中的其他用户不应该看到任何这些事务所作的没有提交的变化。另外,一个语句不应该看到任何在该语句开始执行后所作的变化。换句话说,一个语句在执行期间所看到的数据是静止的。