RAC 完整显示 crs_stat 命令中 name 列的脚本

 

  RAC 常用的脚本说明,参考我的Blog

       Oracle RAC 常用维护工具和命令

http://www.cndba.cn/Dave/article/1188

 

       crs_stat 命令在显示上比srvctl 直观。 先查询一下:

 

[oracle@rac1 u01]$ crs_stat -t

Name           Type           Target    State     Host       

------------------------------------------------------------

ora....SM2.asm application    ONLINE    ONLINE    rac1       

ora....C1.lsnr application    ONLINE    ONLINE    rac1        

ora.rac1.gsd   application    ONLINE    ONLINE    rac1       

ora.rac1.ons   application    ONLINE    OFFLINE              

ora.rac1.vip   application    ONLINE    ONLINE    rac1       

ora....SM1.asm application    ONLINE    ONLINE    rac2        

ora....C2.lsnr application    ONLINE    ONLINE    rac2       

ora.rac2.gsd   application    ONLINE    ONLINE    rac2       

ora.rac2.ons   application    ONLINE    OFFLINE              

ora.rac2.vip   application    ONLINE    ONLINE    rac2    

 

       可以直观的列出各节点进程的状态。 但是这个命令的不足之处,就是Name列,不能显示全,那么在使用的时候就有点不方便。比如我们启动和关闭相关进程的时候。

 

比如:

[oracle@rac1 u01]$ crs_start ora.rac2.ons

Attempting to start `ora.rac2.ons` on member `rac2`

Start of `ora.rac2.ons` on member `rac2` succeeded.

[oracle@rac1 u01]$ crs_start ora.rac1.ons

--我们这里要写全进程的名称,如果名称过长,就不能显示全。

Attempting to start `ora.rac1.ons` on member `rac1`

Start of `ora.rac1.ons` on member `rac1` succeeded.

[oracle@rac1 u01]$ crs_stat -t

Name           Type           Target    State     Host       

------------------------------------------------------------

ora....SM2.asm application    ONLINE    ONLINE    rac1       

ora....C1.lsnr application    ONLINE    ONLINE    rac1       

ora.rac1.gsd   application    ONLINE    ONLINE    rac1       

ora.rac1.ons   application    ONLINE    ONLINE    rac1       

ora.rac1.vip   application    ONLINE    ONLINE    rac1       

ora....SM1.asm application    ONLINE    ONLINE    rac2       

ora....C2.lsnr application    ONLINE    ONLINE    rac2       

ora.rac2.gsd   application    ONLINE    ONLINE    rac2       

ora.rac2.ons   application    ONLINE    ONLINE    rac2       

ora.rac2.vip   application    ONLINE    ONLINE    rac2       

 

 

无意中网上看到一个脚本,很好的解决了这个问题,感谢作者的辛勤劳动。

 

crs_stat.sh

awk /

  'BEGIN {printf "%-30s %-10s %-10s %-10s/n","Name                          ","Target    ","State     ","Host   ";

          printf "%-30s %-10s %-10s %-10s/n","------------------------------","----------", "---------","-------";}'

crs_stat | awk /

'BEGIN { FS="=| ";state = 0;}

  $1~/NAME/ {appname = $2; state=1};

  state == 0 {next;}

  $1~/TARGET/ && state == 1 {apptarget = $2; state=2;}

  $1~/STATE/ && state == 2 {appstate = $2; apphost = $4; state=3;}

  state == 3 {printf "%-30s %-10s %-10s %-10s/n", appname,apptarget,appstate,apphost; state=0;}'

 

效果如下:

[oracle@rac1 u01]$ sh crs_stat.sh

Name                           Target     State      Host     

------------------------------ ---------- ---------  -------  

ora.rac1.ASM2.asm              ONLINE     ONLINE     rac1     

ora.rac1.LISTENER_RAC1.lsnr    ONLINE     ONLINE     rac1     

ora.rac1.gsd                   ONLINE     ONLINE     rac1     

ora.rac1.ons                   ONLINE     ONLINE     rac1     

ora.rac1.vip                   ONLINE     ONLINE     rac1     

ora.rac2.ASM1.asm              ONLINE     ONLINE     rac2     

ora.rac2.LISTENER_RAC2.lsnr    ONLINE     ONLINE     rac2     

ora.rac2.gsd                   ONLINE     ONLINE     rac2     

ora.rac2.ons                   ONLINE     ONLINE     rac2     

ora.rac2.vip                   ONLINE     ONLINE     rac2   

 

通过这个脚本,可以完整的显示进程的名称。 我们操作的时候,就方便很多了。

 

 

 

 

 

---------------------------------------------------------------------------------------------------

QQ: 492913789

Email:ahdba@qq.com

Blog: http://www.cndba.cn/dave



DBA1 群:62697716(); DBA2 群:62697977() DBA3 群:62697850()  

DBA 超级群:63306533(); DBA4 群: 83829929 DBA5群: 142216823

聊天 群:40132017

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

参考资源链接:[Oracle RAC CRS命令详解:状态查看与资源管理](https://wenku.youkuaiyun.com/doc/1y0o5o3a4c?utm_source=wenku_answer2doc_content) 在Oracle RAC环境中,管理集群资源状态是一项基础而又关键的任务,其中crs_statcrs_start和crs_stop命令行工具提供了强大的支持。首先,crs_stat是一个关键工具,它用于显示集群中所有资源的状态及其详细信息。通过执行'crs_stat -t',管理员可以查看资源类型、运行状态以及它们所在的具体节点。比如,管理员应定期检查ora.racdb.dbapplication资源是否始终处于ONLINE状态,以确保数据库服务的高可用性。 其次,crs_start和crs_stop命令用于启动和停止特定的资源或整个集群。例如,'crs_start -t ora....'可以启动特定类型的资源,而'crs_stop -t ora....'可以停止它。在执行这些操作之前,重要的是确保已做好充分的备份,并且更改不会干扰到关键业务操作。特别注意,在集群运行期间,管理员不应随意停止资源,除非进行计划的维护或升级。 在进行集群资源管理时,crsctl命令集也是不可或缺的。crsctl提供了更多的管理选项,包括配置、监控、日志查看和资源动态调整。例如,'crsctl config get nodes'可以显示集群中所有节点的状态,'crsctl checkconfig'则可以检查集群配置的正确性和一致性。 为了更深入地理解和掌握这些命令,推荐参考《Oracle RAC CRS命令详解:状态查看与资源管理》这份资料。它不仅详细介绍了每个命令的使用方法,还提供了丰富的示例和场景应用,有助于管理员更好地理解和运用这些工具。通过这份资料,你可以学会如何有效地使用crs_statcrs_start和crs_stop等命令进行日常的集群监控和管理,从而确保Oracle RAC环境的高可用性和稳定性。 参考资源链接:[Oracle RAC CRS命令详解:状态查看与资源管理](https://wenku.youkuaiyun.com/doc/1y0o5o3a4c?utm_source=wenku_answer2doc_content)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值