oracle sga后台进程
先对主要进程进行一个简单的介绍汇总吧:
pmon即processes monitor,进程监视器,自动进行简单的故障回滚等操作。
smon即system monitor,系统监视器,她关注的是系统级的操作而非单个进程,她的主要任务就是实例恢复,同时肩负清理临时表空间、回滚段表空间、合并空闲空间等。
lckn这个进程是在集群上面使用,最多可以有10个进程,主要用于实例间的封锁。
reco主要用于distributed database recovery,即分布式数据库的恢复。
ckpt用于触发从数据缓冲区中写数据到磁盘(即dbwr)。
dbwr进程负责把数据缓冲区写到磁盘里。
lgwr进程负责把日志缓冲区的内容从内存写到磁盘的redo文件里。
arch进程负责在lgwr要覆盖重写的时候转移日志为归档日志文件。
突然感觉好像这些进程都没有什么需要特别解释的,算了,把arch进程说一下。arch归档进程会循环写入进程,在这个过程中就会出现循环写入的情况,这时候为了保证数据安全性,就需要把即将被覆盖的日志写出到磁盘。在实际应用中,这个地方如何设置要看具体情况,要看你是想要效率还是想要安全了。像测试库,就没必要,但是某些情况就例外了。在rman备份前,必须将数据库切换为archivelog mode。这时候数据库的database log mode必须为archiver mode,oracle默认的模式为no archive log,那么如何切换为archive log模式呢?很简单,三步搞定(生产库谨慎操作):1.关闭数据库 shutdown immediate;2.启动到mount模式 startup mount; 3.改动log mode alter database archiverlog;4.打开数据库 alter database open;
这时候通过命令archive log list查看就知道数据库已经是归档模式。