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

crs-command

原创 逆风飞翔 2021-03-18
527

1、 查看集群状态
通过 crs_stat 命令可以查看集群中所有资源的状态,包括资源状态、资源运行在哪个节点上、资源类型等信息。例如:
[oracle@node-rac1 ~]$ crs_stat –t
如果要更详细的了解每个资源的名称及状态,还可以使用“crs_stat -l”命令,例如:
[oracle@node-rac2 ~]$crs_stat -l|head -n 15

还可以使用crs_stat -p <resource_name> 来查看资源的属性情况,包括依赖关系等等,例如:
[oracle@node-rac1 ~]$crs_stat -p ora.node2.LISTENER_NODE2.lsnr

2、启动与关闭集群服务资源
2.1 crs_stop 与 crs_start 命令
通过 crs_stop 可以方便的关闭某个服务资源,例如:
[oracle@node-rac1 admin]$ crs_stop ora.node2.LISTENER_NODE2.lsnr

此时,查看node-rac1节点的LISTENER服务状态:

[oracle@node-rac1 ~]$ crs_stat -t|grep lsnr

接着启动node-rac1节点的LISTENER服务:
[oracle@node-rac1 ~]$crs_start ora.node2.LISTENER_NODE-RAC1.lsnr

其实RAC数据库的监听还可以通过如下方式启动和关闭:
[oracle@node-rac1 ~]lsnrctlstartLISTENERNODERAC1[oracle@noderac1 ]lsnrctl start LISTENER_NODE-RAC1 [oracle@node-rac1 ~]lsnrctl stop LISTENER_NODE-RAC1
有时候,可能需要将集群资源全部关闭,可以通过如下命令完成:
[oracle@node-rac1 ~]$ crs_stop -all
也通过一个命令将集群所有资源全部启动,操作如下:
[oracle@node-rac2 ~]$ crs_start -all

2.2 crsctl命令
crsctl命令功能非常强大,它可以检查CRS后台进程运行状态、可以添加/删除表决磁盘、可以启动/关闭集群所有资源、可以启动/关闭CRS服务等
检测node-rac1节点的状态:
[[oracle@node2 ~]$ crsctl check cluster -n node2


node2:
CRS-4537: 集群就绪服务联机
CRS-4529: 集群同步服务联机
CRS-4533: 事件管理器联机

crsctl check crs
检查 OHAS 和 CRS 堆栈的状态

crsctl check cluster [[-all]|[-n […]]]
检查 CRS 堆栈状态

crsctl check ctss
检查集群时间同步服务的状态

crsctl check resource { […]|-w } [-n ] [-k ] [-d ]
检查资源的状态

crsctl check css
检查集群同步服务的状态

检查cssd服务的运行状态:

[oracle@node-rac2 ~]$crsctl check cssd

检查CRS的运行版本:

[oracle@node-rac2 ~]$crsctl query crs activeversion

查看css加载的模块:

[oracle@node-rac2 ~]$ crsctl lsmodules css

2、启动与关闭集群服务资源
2.2 crsctl命令
停止本节点所有CRS资源:
[oracle@node-rac1 ~]$crsctl stop resources

启动本节点所有CRS资源:
[oracle@node-rac1 ~]$crsctl start resources

在本节点关闭CRS服务,此操作需要root用户身份:
[root@node-rac1 ~]#/home/u01/app/11.2.0.4/grid/bin/crsctl stop crs
[root@node-rac1 ~]#/home/u01/app/11.2.0.4/grid/bin/crsctl start crs

3、启动与关闭CRS
在RAC数据库中,CRS接管了数据库的启动和关闭等操作,集群节点的实例随着CRS服务的启动而自动启动,但是crs也可以进行手工启动和关闭。
管理CRS服务的命令如下:
[root@node-rac1 ~]# /etc/init.d/init.crs {stop|start|enable|disable}
例如,要关闭某个节点的CRS服务,可以执行如下操作:
[root@node-rac1 ~]# /etc/init.d/init.crs stop

–CRS服务关闭后,与此节点相关的集群实例也将随之停止,同时此节点的vip地址也将转移到另一个节点。

[root@node-rac1 ~]# /etc/init.d/init.crs start

下面简单介绍下每个进程的含义:
ocssd:用于管理与协调集群中各节点的关系,并用于节点间通信。该进程非常重要,如果这个进程异常中止,会导致系统自动重启。在某些极端情况下,如果ocssd无法正常启动,就会导致操作系统循环重启。
crsd:监控节点各种资源,当某个资源发生异常时,自动重启或者切换该资源。
evmd:是一个基于后台的事件检测程序。
oclskd:该守护进程是Oracle 11g(11.1.0.6)新增的一个后台进程,主要用于监控RAC数据库节点实例,当某个实例挂起时,就重启该节点。

Voting disk(表决磁盘)主要用于记录节点成员信息

[oracle@node2 ~]$ crsctl query css votedisk

STATE File Universal Id File Name Disk group


  1. ONLINE 5417e738c65e4f73bfcf0661b35e291c (/dev/mapper/asm-disk0001) [DATA01]
  2. ONLINE 21fd0102e1554f1abf73ceb0a2412a58 (/dev/mapper/asm-disk0003) [DATA01]
  3. ONLINE 0c1616c191a24f02bf2489a492374a42 (/dev/mapper/asm-disk0004) [DATA01]

备份Voting disk
Voting disk的信息很重要,需要定期备份votedisk,例如:
[oracle@node-rac1 ~]$dd if=/dev/mapper/asm-disk0001 of=/tmp/votedisk0001.bak

(3)恢复Voting disk
[oracle@node-rac1 ~]$dd if=/tmp/votedisk0001.bak of=/dev/mapper/asm-disk0001

(4)删除voting disk镜像盘
如果要删除一块表决磁盘,可以执行如下命令:
crsctl delete css votedisk /dev/mapper/asm-disk0001 -force

(5)添加voting disk镜像盘
添加一块表决磁盘时,执行如下命令:
crsctl add css votedisk /dev/mapper/asm-disk0004 -force

管理OCR
OCR磁盘主要用于记录节点成员的配置信息,如数据库、服务、实例、vip地址、监听器、应用进程等CRS资源配置信息,OCR可以存储在裸设备或者群集文件系统上。
(1)检查ocr设置
可以通过如下命令查看当前的OCR设置:
[oracle@node-rac1 ~]$ ocrcheck

5、管理OCR
(2)OCR的备份与恢复
默认情况下,Oracle每四个小时自动备份一次OCR,并保存三个有效版本,但是仅保存在集群/home/u01/app/11.2.0.4/grid/cdata/node-cluster/的某一个节点上。
要查看自动备份OCR文件的路径,执行如下命令:
[oracle@node-rac1 ~]ocrconfig -showbackup node-rac2 2011/03/11 13:10:27 backup00.ocr node-rac2 2011/03/11 09:10:25 /home/u01/app/11.2.0.4/grid/cdata/node-cluster/backup01.ocr node-rac2 2011/03/11 05:10:24 /home/u01/app/11.2.0.4/grid/cdata/node-cluster/backup02.ocr node-rac2 2011/03/10 21:10:20 /home/u01/app/11.2.0.4/grid/cdata/node-cluster/day.ocr node-rac2 2011/03/10 21:10:20 /home/u01/app/11.2.0.4/grid/cdata/node-cluster/week.ocr 恢复OCR的方法也很简单,例如: [oracle@node-rac1 ~]ocrconfig –restore /home/u01/app/11.2.0.4/grid/cdata/node-cluster/backup01.ocr
其实OCR也可以通过手动的方式导出、导入,方法如下:
手动导出:ocrconfig -export /tmp/ocr_bak
手动导入:ocrconfig -import /tmp/ocr_bak

5、管理OCR
(3)添加OCR镜像盘
向磁盘组中添加OCR磁盘的基本步骤如下:
执行命令crsctl stop crs停掉CRS服务
创建用于镜像OCR的RAW设备,例如:/dev/raw/raw11

执行“ocrconfig -export”命令导出OCR的信息
修改/etc/oracle/ocr.loc文件,添加新增的raw设备,例如:

[oracle@node2 ~]$ more /etc/oracle/ocr.loc
ocrconfig_loc=+DATA01
local_only=FALSE

执行命令“ocrconfig -import”将OCR备份信息导入磁盘
检查ocr设置信息,看是否增加成功
最后用“crsctl start crs”启动CRS服务

6、快速卸载CRS
CRS安装非常简单,但是如果CRS出现问题,需要重新安装时,卸载CRS并不是一件轻松的事情,下面就重点讲述下如何在Linux下卸载CRS程序。
(1)关闭CRS服务
在卸载CRS之前,必须要停止CRS服务,即执行:
/etc/init.d/init.crs stop
如果无法停止crs服务,那么就将CRS服务禁用,即:
/etc/init.d/init.crs disable
然后重启系统。
2)执行删除脚本
首先在集群中的所有节点上执行 $ORA_CRS_HOME/install/rootdelete.sh,
这里以节点node-rac1为例
[root@node-rac1 install]# /app/oracrs/product/11.0.6/crs/install/rootdeinstall.sh

接着,在机(集)群中的任意一个节点上执行 $ORA_CRS_HOME/install/rootdeinstall.sh。

6、 快速卸载CRS
(4)删除剩余其它文件
CRS卸载程序可以删除大部分安装程序,但是并不能完全卸载,所以需要手动删除未卸载的一些文件,在集群所有节点上执行如下删除命令:
rm -rf /home/u01/app/11.2.0.4/grid/crs
/bin/rm -rf /var/tmp/.oracle
/bin/rm -f /etc/oraInst.loc
rm -rf /etc/oracle/
rm -f /etc/oratab
所有操作执行完毕后,重启集群的每个节点,重新安装CRS即可。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论