后台进程

来源:互联网 发布:mac版ps怎么破解 编辑:程序博客网 时间:2024/05/02 02:58

1.SMON

         SMON 用于执行例程恢复,合并空间碎片并释放临时段。假定数据库执行过程中出现了例程失败(断点、内存故障、后台进程例外),此时SGA信息尚未完全写入磁盘(数据文件、重做日志)。当重新打开数据库时,后台进程SMON会按照以下步骤自动执行历程恢复:

         REDO:重新应用那些被记载到重做日志,但尚未记载到数据文件中的数据。因为有被提交的失误已经记载到重做日志,所以可以保证恢复事务数据。

        打开数据库:在打开数据库时,既包含了被提交的数据,也包含了为被提交的数据(枷锁)。

        UNDO:取消未提交数据。打开数据库后,oracle会自动使用UNDO段回退未提交的数据。

2.PMON

        PMON用于监视服务器进程的执行,并且在服务器进程失败时清除服务器进程。访问oracle SERVER时,oracle会在服务器端为用户进程分配服务器进程。假定用户进程因地址例外意外终止进行,PMON可以轮询检测该服务器进程,并执行以下操作:

        回退用户的当前事务。

        释放服务器进程所占的所有表锁和行锁。

        释放用户所占的其他资源

3.DBWR

        用于将数据高速缓存的脏缓冲区的数据写入到数据文件中。

        默认情况下只有一个DBW0进程,通过设置初始化参数 db_writer_process可以定义最多10个DBWR进程。出现一下情况时,DBWR进程会开始工作:

        系统发出检查点。

        服务器进程不能找到空闲缓冲区。

        删除或截断表。

        是表空间正常脱机(alter table.... offline normal)。

        开始表空间备份。

 

4.LGWR

  用于将重做日志缓冲区所记载的全部内容写入到重做日志文件中。当出现如下情况时,LGWR进程会开始工作:

         提交事务。

         每隔三秒钟。

        当重做信息超过1M时

        重做日志缓冲区已经有三分之一填满。

        在DBWR进程将缓冲区写入到数据文件之前。

5.CKPT

        CKPT 用于发出检查点。检查点会同步数据库的数据文件、控制文件、和重做日志。当发出检查点时,后台进程CKPT将检查点时刻的SCN,写入到控制文件和数据文件头部,同时促使后台进程DBWR将所有脏缓冲区写入到数据文件中。

         当发出检查点时,不仅后台进程CKPT和DBWR要开始工作,LGWR也会将重做日志缓冲区写入到重做日志,从而确保数据文件、控制文件、和重做日志的一致性。出现一下情况,CKPT开始工作:

         日志切换。

         关闭例程。

         手工检查点操作。

         由初始化参数fast_start_mttr_target强制发出检查点。

6.ARCH 

         用于将重做日志的事务变化复制到归档日志中,该后台进程只有在 ARCHIVELOG模式下才有意义。默认情况下只有一个ARC0进程,通过设置初始化参数log_archive_max_process最多可以定义10个归档进程。在 ARCHIVELOG模式下,进行日志切换时会自动生成归档日志。

原创粉丝点击