CentOS中Oracle11g进程有哪些

最近遇到Oracle数据库运行过程实例进程由于某种原因导致中止的问题,专门看了下正常Oracle数据库启动后的进程有哪些,查阅资料了解了下各进程的作用,记录如下。

复制代码
oracle     3032      1  0 07:36 ?        00:00:00 ora_pmon_orcl
oracle     3034      1  0 07:36 ?        00:00:00 ora_vktm_orcl
oracle     3038      1  0 07:36 ?        00:00:00 ora_gen0_orcl
oracle     3040      1  0 07:36 ?        00:00:00 ora_diag_orcl
oracle     3042      1  0 07:36 ?        00:00:00 ora_dbrm_orcl
oracle     3044      1  0 07:36 ?        00:00:00 ora_psp0_orcl
oracle     3046      1  0 07:36 ?        00:00:00 ora_dia0_orcl
oracle     3048      1  0 07:36 ?        00:00:00 ora_mman_orcl
oracle     3050      1  0 07:36 ?        00:00:00 ora_dbw0_orcl
oracle     3052      1  0 07:36 ?        00:00:00 ora_lgwr_orcl
oracle     3054      1  0 07:36 ?        00:00:00 ora_ckpt_orcl
oracle     3056      1  0 07:36 ?        00:00:00 ora_smon_orcl
oracle     3058      1  0 07:36 ?        00:00:00 ora_reco_orcl
oracle     3060      1  0 07:36 ?        00:00:00 ora_mmon_orcl
oracle     3062      1  0 07:36 ?        00:00:00 ora_mmnl_orcl
oracle     3064      1  0 07:36 ?        00:00:00 ora_d000_orcl
oracle     3066      1  0 07:36 ?        00:00:00 ora_s000_orcl
oracle     3108      1  0 07:36 ?        00:00:00 ora_qmnc_orcl
oracle     3122      1  0 07:36 ?        00:00:00 ora_cjq0_orcl
oracle     3128      1  0 07:36 ?        00:00:00 ora_q000_orcl
oracle     3130      1  0 07:36 ?        00:00:00 ora_q001_orcl
oracle     3133      1  0 07:36 ?        00:00:00 /home/oracle/app/oracle/product/11.2.0/dbhome_1//bin/tnslsnr LISTENER -inherit
oracle     3568      1  0 07:37 pts/1    00:00:00 /home/oracle/app/oracle/product/11.2.0/dbhome_1/perl/bin/perl /home/oracle/app/oracle/product/11.2.0/dbhome_1/bin/emwd.pl dbconsole /home/oracle/app/oracle/product/11.2.0/dbhome_1/localhost_orcl/sysman/log/emdb.nohup
oracle     3584   3568 39 07:37 pts/1    00:00:38 /home/oracle/app/oracle/product/11.2.0/dbhome_1/jdk/bin/java -server -Xmx384M -XX:MaxPermSize=400M -XX:MinHeapFreeRatio=20 -XX:MaxHeapFreeRatio=40 -DORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1 -Doracle.home=/home/oracle/app/oracle/product/11.2.0/dbhome_1/oc4j -Doracle.oc4j.localhome=/home/oracle/app/oracle/product/11.2.0/dbhome_1/localhost_orcl/sysman -DEMSTATE=/home/oracle/app/oracle/product/11.2.0/dbhome_1/localhost_orcl -Doracle.j2ee.dont.use.memory.archive=true -Djava.protocol.handler.pkgs=HTTPClient -Doracle.security.jazn.config=/home/oracle/app/oracle/product/11.2.0/dbhome_1/oc4j/j2ee/OC4J_DBConsole_localhost_orcl/config/jazn.xml -Djava.security.policy=/home/oracle/app/oracle/product/11.2.0/dbhome_1/oc4j/j2ee/OC4J_DBConsole_localhost_orcl/config/java2.policy -Djavax.net.ssl.KeyStore=/home/oracle/app/oracle/product/11.2.0/dbhome_1/sysman/config/OCMTrustedCerts.txt-Djava.security.properties=/home/oracle/app/oracle/product/11.2.0/dbhome_1/oc4j/j2ee/home/config/jazn.security.props -DEMDROOT=/home/oracle/app/oracle/product/11.2.0/dbhome_1/localhost_orcl -Dsysman.md5password=true -Drepapi.oracle.home=/home/oracle/app/oracle/product/11.2.0/dbhome_1 -Ddisable.checkForUpdate=true -Doracle.sysman.ccr.ocmSDK.websvc.keystore=/home/oracle/app/oracle/product/11.2.0/dbhome_1/jlib/emocmclnt.ks -Dice.pilots.html4.ignoreNonGenericFonts=true -Djava.awt.headless=true -jar /home/oracle/app/oracle/product/11.2.0/dbhome_1/oc4j/j2ee/home/oc4j.jar -config /home/oracle/app/oracle/product/11.2.0/dbhome_1/oc4j/j2ee/OC4J_DBConsole_localhost_orcl/config/server.xml
oracle     3598   3568  1 07:37 pts/1    00:00:01 /home/oracle/app/oracle/product/11.2.0/dbhome_1/bin/emagent
oracle     4019      1  0 07:37 ?        00:00:00 oracleorcl (LOCAL=NO)
oracle     4024      1  1 07:37 ?        00:00:01 oracleorcl (LOCAL=NO)
oracle     4128      1  0 07:37 ?        00:00:00 oracleorcl (LOCAL=NO)
oracle     4133      1  1 07:37 ?        00:00:00 oracleorcl (LOCAL=NO)
oracle     4140      1  0 07:37 ?        00:00:00 oracleorcl (LOCAL=NO)
oracle     4172      1 14 07:37 ?        00:00:08 oracleorcl (LOCAL=NO)
oracle     4214      1  5 07:37 ?        00:00:02 oracleorcl (LOCAL=NO)
oracle     4216      1  0 07:37 ?        00:00:00 oracleorcl (LOCAL=NO)
oracle     4218      1  0 07:37 ?        00:00:00 oracleorcl (LOCAL=NO)
oracle     4266      1  3 07:38 ?        00:00:00 ora_j000_orcl
oracle     4268      1  0 07:38 ?        00:00:00 ora_j001_orcl

一、监听服务

这是监听进程,用来监听客户端请求的。可以看到其端口就是Oracle连接的默认端口1521。

监听进程是独立于oracle之外的进程。监听进程不依赖于oracle实例存在,是独立于oracle实例之外的进程,实例的启停并不会影响监听进程,监听进程只跟内核对接,然后将数据包转发给实例。监听进程只是实例和linux内核之间的桥梁。

相关命令:

复制代码
lsnrctl status 查看监听服务状态 
lsnrctl start 启动监听服务 
lsnrctl stop 停止监听服务

二、OEM(Oracle Enterprise Manager)服务

OEM是采用直观而且方便的图像化界面来控制和管理ORACLE数据库的工具集,它包含大量对DBA有用的工具。在oracle中,数据库管理和操作都可以使用OEM来完成,如创建用户和角色,权限分配,创建方案对象,进行存储管理等。

使用火狐浏览器访问:https://ip:1158

相关命令

复制代码
emctl stop dbconsole 关闭OEM服务 
emctl start dbconsole 启动OEM服务 
emctl status dbconsole 查看OEM服务状态

三、Oracle实例相关进程

实际生产环境OEM服务不是必须的,可以暂时关闭。关闭后Oracle剩下的进程如下。以下除监听进程外就是Oracle后台进程。后台进程是oracle实例运行起来后自动运行的进程,完成oracle的基本功能。

必需:dbwn、ckpt、lgwr、smon、pmon、reco

可选:arcn、asmb、rbal、其他

1、dbw0进程

必须存在的进程 --> database writer n --> 数据写进程,在进程中看到n,意思就是该类型进程可以存在多个,并且进程之间的关系为并发

2、lgwr进程

lgwr --> log writer进程,负责将sga中的redo log buffer中的redo log落盘到redo log file中。实现和保证redo log的持久化。

3、ckpt进程(检查点进程)

ckpt --> checkpoint。这个进程的作用就是专门设置和维护检查点。检查点的作用就是为了尽量缩短数据库恢复时间。

4、smon进程(系统监视器进程)

smon进程 --> system moniter系统监视器进程。

查看oracle实例进程时,仅需要查看smon进程即可。smon进程是整个oracle实例的主进程。他的作用就是管理oracle中的其他进程。

oracle实例中的进程都是独立运行的,这些进程的ppid都是1。换句话将这些进程的父进程都是linux操作系统的主进程。

kill smon 会导致实例结束的。

kill 非smon 实例不会结束,且会被自动运行起来。

5、pmon进程(进程监视器进程)

pmon --> 进程监视器进程。这个的作用是监视进程的。

smon/pmon本身作为监视器进程都会对其他进程进行监视。

smon --> system --> 监视的是后台进程

pmon --> process --> 监视的是服务器进程

客户连接实例,会创建对应的服务器进程,可以执行的SQL语句等都是在服务器进程中完成的。客户连接中,事务执行期间,实际上都是服务器进程在工作。

6、arcn进程(归档进程)

arcn --> archive归档 --> 归档进程,并不是oracle必须的进程

归档进程:负责将redo log file中的数据转储到归档日志文件中

相关推荐
代码的余温2 小时前
Oracle RAC共享存储核心技术
数据库·oracle
程序员瓜叔2 小时前
基于SVN搭建企业内部知识库系统实践
svn·centos
float_六七2 小时前
数据库物理外键与逻辑外键全解析
数据库·oracle
大白的编程日记.2 小时前
【MySQL】数据库的基本操作
数据库·mysql·oracle
Jamie Chyi2 小时前
【Oracle经验分享】字符串拼接过长问题的解决方案 —— 巧用 XMLAGG
数据库·oracle
代码的余温2 小时前
Oracle高可用与容灾解决方案
数据库·oracle
奔跑吧 android3 小时前
【linux kernel 常用数据结构和设计模式】【数据结构 2】【通过一个案例属性list、hlist、rbtree、xarray数据结构使用】
linux·数据结构·list·kernel·rbtree·hlist·xarray
yzx9910133 小时前
生活在数字世界:一份人人都能看懂的网络安全生存指南
运维·开发语言·网络·人工智能·自动化
橙*^O^*安5 小时前
Go 语言基础:变量与常量
运维·开发语言·后端·golang·kubernetes
NiKo_W5 小时前
Linux 文件系统与基础指令
linux·开发语言·指令