zoukankan      html  css  js  c++  java
  • RAC 完整显示 crs_stat 命令中 name 列的脚本

     

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

           Oracle RAC 常用维护工具和命令

           http://blog.csdn.net/tianlesoftware/archive/2010/03/09/5358573.aspx

     

           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   

     

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

     

     

     

     

     

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

    Blog http://blog.csdn.net/tianlesoftware

    网上资源: http://tianlesoftware.download.csdn.net

    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx

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

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

    聊天 群:40132017

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

    道森Oracle,国内最早、最大的网络语音培训机构,我们提供专业、优质的Oracle技术培训和服务! 我们的官方网站:http://www.daosenoracle.com 官方淘宝店:http://daosenpx.taobao.com/
  • 相关阅读:
    字节序列高低端问题
    简单的进制转换
    网页中如何调用WIN本地程序
    获取CAN报文并解析
    异步通信服务选型
    PostgreSQL 更新JSON,JSONB字段
    js,Date的toJSON方法时间和当地时间不一致如何处理
    js中字符串的替换 replace方法
    百度富文本编辑器umeditor,ueditor字体修改无效的问题
    python 3 基础之类和对象的创建、面向对象的三大特性
  • 原文地址:https://www.cnblogs.com/tianlesoftware/p/3609746.html
Copyright © 2011-2022 走看看