LGWR进程在任意时刻只能写一组日志组,LGWR进程正在写的组称作current。
LGWR进程将完全相同的信息从重做日志缓冲区复制到该组的每个重做日志文件中。
它是以循环的方式写重做日志组的。当LGWR写满了最后一组重做日志时,LGWR开始写第一组重做日志。
为了解决日志文件信息被覆盖的问题,引入了归档结构。
当Oracle数据库运行在归档方式下(Oracle默认模式是非归档方式),当LGWR的写操作从
一个重做日志组切换到另一个重做日志组后,ARCH进程就会将原来的重做日志文件中的
信息复制到归档日志文件中,可以把归档日志文件看成是重做日志文件的备份。
Oracle服务器保证在ARCH进程没有将重做日志文件中的信息复制到归档日志文件之前,
LGWR不能再写这组重做日志文件。有了归档日志文件Oracle服务器就能保证所谓的全恢复。
由于重做日志文件是联机的,归档日志文件是脱机日志文件,除了在归档写进程进行复
制的那一瞬间,Oracle服务器在运行时是不需要管理它们的。