转:Oracle集群重要进程evmd、cssd和crsd发源地及跟踪探索

简介: http://www.xuexizu.com/training_centre/content/111841?nid=30538 Oracle集群后台进程众多,如何才能理清其中的关系?我们尝试探索一下。
http://www.xuexizu.com/training_centre/content/111841?nid=30538 

Oracle集群后台进程众多,如何才能理清其中的关系?我们尝试探索一下。我们从“/etc/inittab”文件开始。

1.“/etc/inittab”文件内容
看一下从Linux操作系统“/etc/inittab”文件中能获得哪些信息。
[root@rac1 ~]# cat /etc/inittab
#
# inittab       This file describes how the INIT process should set up
#               the system in a certain run-level.
#
# Author:       Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
#               Modified for RHS Linux by Marc Ewing and Donnie Barnes
#

# Default runlevel. The runlevels used by RHS are:
#   0 - halt (Do NOT set initdefault to this)
#   1 - Single user mode
#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
#   3 - Full multiuser mode
#   4 - unused
#   5 - X11
#   6 - reboot (Do NOT set initdefault to this)
#
id:5:initdefault:

# System initialization.
si::sysinit:/etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6

# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now

# When our UPS tells us power has failed, assume we have a few minutes
# of power left.  Schedule a shutdown for 2 minutes from now.
# This does, of course, assume you have powerd installed and your
# UPS connected and working correctly.
pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"

# If power was restored before the shutdown kicked in, cancel it.
pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"


# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

# Run xdm in runlevel 5
x:5:respawn:/etc/X11/prefdm -nodaemon
h1:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1 </dev/null
h2:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1 </dev/null
h3:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1 </dev/null

注意最后一部分内容,此处记录了Oracle集群主进程的源头。

2.使用pstree命令继续探索
1)挖掘EVMD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.evmd run"
root      3322     1  0 Nov24 ?        00:00:00 /bin/sh /etc/init.d/init.evmd run
[root@rac1 ~]# pstree 3322 -a
init.evmd /etc/init.d/init.evmd run
  └─su -l oracle -c...
      └─evmd.bin
          ├─evmlogger.bin -o /oracle/app/crs/evm/log/evmlogger.info -l/oracl
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          ├─{evmd.bin}
          └─{evmd.bin}

2)挖掘CSSD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.cssd fatal"
root      3323     1  0 Nov24 ?        00:24:34 /bin/sh /etc/init.d/init.cssd fatal
[root@rac1 ~]# pstree 3323 -a
init.cssd /etc/init.d/init.cssd fatal
  ├─init.cssd /etc/init.d/init.cssd oprocd
  │   └─oprocd.bin run -t 1000 -m 500 -f
  ├─init.cssd /etc/init.d/init.cssd oclsomon
  │   └─runuser -l oracle -c...
  │       └─sh -c...
  │           └─oclsomon.bin
  ├─init.cssd /etc/init.d/init.cssd daemon
  │   └─ocssd.bin
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       ├─{ocssd.bin}
  │       └─{ocssd.bin}
  └─sleep 1

3)挖掘CRSD
[root@rac1 ~]# ps -ef | grep -v grep | grep "init.crsd run"
root      3324     1  0 Nov24 ?        00:00:00 /bin/sh /etc/init.d/init.crsd run
[root@rac1 ~]# pstree 3324 -a
init.crsd /etc/init.d/init.crsd run
  └─crsd.bin reboot
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      ├─{crsd.bin}
      └─{crsd.bin}

3.小结
本文从“/etc/inittab”文件入手给出探索Oracle集群后台进程关系的方法。没有给出具体进程的详细功能描述。有关进程的详细描述请参考Oracle官方文档“Oracle Clusterware Software Component Processing Details”(http://download.oracle.com/docs/cd/B19306_01/rac.102/b14197/admcon.htm#sthref19)。

相关文章
|
4月前
|
关系型数据库 数据库 OceanBase
重启集群中所有节点的 observer 进程
重启集群中所有节点的 observer 进程
30 0
|
5月前
|
流计算
110 Storm集群的进程及日志熟悉
110 Storm集群的进程及日志熟悉
35 0
|
8月前
|
Oracle 关系型数据库 Linux
Oracle设置连接数进程数会话数
Oracle设置连接数进程数会话数
127 0
|
11月前
|
Oracle 关系型数据库 Linux
启动一个新的Oracle从进程,数据库就连不上了!(ORA-27303)
一线的工程师反映,一个客户在安装了我们公司的产品后,客户的数据库突然出现客户端无法连接的现象!
121 0
|
11月前
|
Oracle 关系型数据库
|
11月前
|
Oracle 安全 关系型数据库
Linux的daemon进程对Oracle数据库的SGA使用大页内存的处理
Oracle对运行在机器内存超过32G上的数据库推荐使用HugePages 来容纳Oracle数据库的SGA,参见。
140 0
|
11月前
|
存储 缓存 负载均衡
重学Node系列04-进程及集群相关
创建进程 相信大家耳边听烂的一句话就是“JavaScript是单线程的”,为了弥补面对单线程对多核使用不足的问题,node很方便的提供了几个创建进程的方法:
49 0
|
缓存 负载均衡 Oracle
Oracle rac集群中的IP类型简介
Oracle rac集群中的IP类型简介
558 0
|
弹性计算 监控 大数据
集群状态显示,进程存在,但是组件状态显示未知
集群状态显示,进程存在,但是组件状态显示未知
|
SQL 缓存 运维
Oracle数据库系统管理与运维 | 数据库进程
Oracle数据库系统管理与运维 | 数据库进程
253 0
Oracle数据库系统管理与运维 | 数据库进程

相关实验场景

更多

推荐镜像

更多