暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

入门学习专题Oracle体系结构之进程篇

DB SQL 学习号 2021-04-19
302

Oracle体系架构《全家福

Oracle的进程

执行 startup nomount命令时, Oracle会试图启动 Oracle实例。当所需的操作系统进程(程序)被启动,且分配了一个称为系统全局区(SGA)的内存区之后, Oracle实例就被启动。介绍启动 Oracle的进程,首先介绍的是实现 Oracle数据库功能所需的五种基本进程,然后介绍用户进程和服务器进程,最后还将介绍一些其他的 Oracle进程。

1、五种必要的Oracle进程

   成功启动了一个 Oracle 11g实例,就至少启动了5种不同的进程。当然,在特定的系统中,这五种不同的进程只是单个Oracle进程中的线程,不过其基本原理是相同的。下面是这些必需的进程:

  • PMON:称为进程监控进程(process monitor process)。

  • SMON:称为系统监控进程(system monitor process)。

  • DBWn:称为数据库写入进程( database writer process)。在 Oracle 11g中,最多可以用9个这样的进程来配置一个实例(不过通常只需要一个这样的进程)。DBWn负责将信息从SGA的数据库缓存区写到数据库数据文件中。

  • LGWR:称为日志写入器进程 (log writer process)负责将生成的重做信息从日志缓冲区写到数据库联机重做日志中。用户会话提交时会通知LGWR写入信息,当重做日志缓冲区快被写满时也需要通知LGWR进程。

  • CKPT:称为检查点,在执行检查点操作时,CKPT进程会向DBWn通知该检查点。CKPT进程也用当前的检查点信息来更新数据库数据文件头。

2、用户进程和服务进程

用户连接到数据库时会生成一个用户进程,该进程将与另一个生成的服务器进程连接。这些进程使用多种协议(如TCP/IP协议)相互通信。

3、Oracle的其他进程

根据 Oracle数据库参数文件的配置,启动 Oracle实例时可能会运行许多其他的 Oracle进程(在某些情况下,可选的进程可能会在请求后很长一段时间后才动)。由于大多数可选的进程与RMAN、数据库备份与恢复都没有关系(除非该进程的故障会导致数据库崩溃,但这种情况很少发生),因此不必过多地讨论这些进程。如有兴趣可以查看Oracle官方文档https://docs.oracle.com/cd/E11882_01/index.htm

其中有一中进程ARCHn与RMAN、数据库备份和恢复有一定关系。如果需要进行联机备份,这种进程(事实上可能存在一个或多个这样的进程)就是备份与恢复进程的关键因素。

下一篇《入门学习专题Oracle体系结构之内存篇》

文章转载自DB SQL 学习号,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论