031 study note-oracle的后台进程

oracle的后台进程:

(1) db writer(DBWn):将dirty buffer写入数据文件中。启动的时候只有一个DBWn,即DBW0,最多可以有10个(DBW0~DBW9)。参数DB_WRITER_PROCESS可以设置启动的时候DBWn的数量。发生条件:(a)clean buffer不够用的时候;(b)表空间发生变化的时候(offinle,BACKUP,read-only);(c)超时;(d)chkpoint

(2) log writer(LGWR):将reolog buffer中的数据写入到redo log中。就算一个group里面的一个redolog被破坏,LGWR还是能够继续写入那个好的redolog。发生条件:(a)commit;(b)将dirty buffer写入到db file的时候;(c)redolog buffer 1/3满;(d)大于1M的redo;(e)每隔3秒。

(3) checkpoint(CHKPT):目的是为了减少还原时间。作用:发生时,会促使DWRn将dirty buffer写入到db file,同时将更新db file的文件头和control file。

(4) system monitor(SMON):(a)当crash重新启动时候,利用redolog做恢复;(b)清理temporary表空间的不在使用的空余空间(做合并)。

(5) process monitor(PMON):间断性检测:释放用户的错误进程,重置进程的状态。

(6) archiver(ARCn)(可选进程):实现online redolog的归档。Arch进程最多有10个(ARC0~ARC9),无论arch进程是否空闲,LGWR进程都会启用新的ARC进程。

(7) recoverer(RECO)(可选进程):当parmeter DISTRIBUTED_TRANSACTIONS的值为非零时,且发生分布式事务的失败时才有此进程。

(8) queue monitor(QMNn)(可选进程):监视Advanced Queuing的异步通信队列。QMNn的数量有parameter AQ_TM_PROCESSES指定。最多10个。

(9) lock(LCKn)(可选进程):用于RAC环境的内部实例锁定,使得多个实例能mount同一个数据库。

(10) dispatcher(Dnnn)(可选进程):存在于共享服务器环境,一个实例上可有多个该进程,一个网络协议一个进程。

(11) shared server(Snnn)(可选进程):存在于共享服务器环境,数量有parameter SHARED_SERVERS和MAX_SHARED_SERVERS设定。

相关文章

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据