'前滚和回滚'是oracle数据库实例发生意外崩溃,重新启动的时候,由SMON进行的自动恢复过程.
0.当实例失败后,SMON首先找到最后scn记录的redo log file,寻找最后一个打入的checkpoint.
1.检查点checkpoint是数据库一致性检查的一个标记.简单的说,就是在这个点上,oracle保证各个文件(数据,控制,日志等)是一致的.检查点的作用就是在进行实例恢复的时候,告诉SMON进程,这个点之前的内容不需要进行恢复.
2.oracle会从这个checkpoint处开始应用日志文件进行'前滚'来重演整个操作过程直到实例失败的那一刻.前滚,就是把已经写到redo上但是还没有写道到data file上的变化通过读取redo来写到datafile上,不论是否提交.
3.打开数据库
4.对于没有进行提交的事物,oracle会从undo表空间中寻找到旧版本scn的数据块信息,来进行sga中buffer cache数据块恢复,'回滚'未提交的事务。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25025926/viewspace-1126295/
,如需转载,请注明出处,否则将追究法律责任。