birk 发表于 2018-9-8 13:18:17

oracle crs起停步骤及srvctl crsctl 命令用法

  Oracle10g RAC关闭及启动步骤
  情况1:需要关闭DB(所有实例),OS及Server。
  a.首先停止Oracle10g环境
  $ lsnrctl stop (每个节点上停止监听,也可以用srvctl来操作)
  或者
  $ srvctl stop listener -n host1(在节点1上停止监听)
  $ emctl stop dbconsole (每个节点停止dbconsole)
  $ srvctl stop database -d orcl (停止数据库所有实例)
  $ srvctl stop nodeapps -n host1 (停节点1服务)
  $ srvctl stop nodeapps -n host2 (停节点2服务)
  # /etc/init.d/init.crs stop (root停cluster软件)
  停机顺序为,先停监听->实例->服务->cluster 软件
  或者用$ crs_stop -all
  b.然后# init 0关闭服务器,或者如果重新启动#init 6
  c.关闭电源。
  d.开启Server ,开始开启Oracle10g数据库及服务等(如果OS重新启动,那么下面的所有服务是自动打开的【除了dbconsole】,不用手工执行了)。
  $ srvctl start nodeapps -n gnd-rac01 (停节点1服务)
  $ srvctl start nodeapps -n gnd-rac02 (停节点2服务)
  # /etc/init.d/init.crs start (root停cluster软件)
  或者用$ crs_start –all
  $ srvctl start database -d tpc (停止数据库所有实例)
  $ lsnrctl start (每个节点上停止监听,也可以用srvctl来操作)
  $ emctl start dbconsole (每个节点停止dbconsole)
  注:srvctl也可以用来关闭某个实例:srvctl stop instance -d orcl -i orcl2
  srvctl开启关闭监听器:srvctl stop listener -n orcl2
  srvctl start listener -n orcl2
  最简单的停机方法:
  $crs_stop -all
  $crs_stat -t 查看是否全是OFFLINE
  root用户执行:# crsctl stop crs
  init 0或 init6
  启动方法:
  # crsctl start crs
  $ crs_start –all
  $ crs_stat -t
  情况2:调整数据库参数的时候,只关闭所有节点实例,不重新启动OS及Server。
  a.首先停止Oracle10g环境
  $ lsnrctl stop (在所有节点上停止监听,也可以用srvctl)
  $ srvctl stop database -d orcl (停止数据库所有实例)
  b.然后开启所有实例及监听器。
  $ srvctl start database -d orcl (开启数据库所有实例)
  $ lsnrctl start (开启所有节点上监听,也可以用srvctl开启监听)
  情况3:不关闭操作系统的情况下,由于问题点或调整某些服务而需要关闭然后开启某些服务程序等。
  关闭某些服务的时候,由于涉及到RAC运行,所以也需要先关闭数据库实例,类似于第一种情况。
  crs命令用法
  1:对于crsctl start crs和crsctl stop crs必须是root用户来执行。
  CRS及相关服务的常用命令的演示
  1、查看状态的命令
  # su–oracle--先切换到oracle用户
  $ crs_stat -t --查看crs及所有的service的状态
  $ crs_stat --此命令可以查看各个资源的完整服务名称
  $ crsctl check crs --用crsctl命令,检查crs相关服务的状态
  $ srvctl status nodeapps -n host1 (host2) --使用srvctl查看所有节点上的服务是否正常
  $ srvctl status database -d db --使用srvctl查看数据库状态
  启动和关闭相关服务的命令
  #crsctl start crs   打开集群CRS命令程序
  #crsctl stop crs    关闭
  oracle用户
  命令的路径:$ORA_CRS_HOME/bin/
  # su – oracle
  $ crs_start -all --启动所有的crs服务
  $ crs_stop -all --停止所有的crs服务
  $ crsctl start crs --启动crs服务
  $ crsctl stop crs --停止crs服务
  $ srvctl start nodeapps -n host1(host2) --启动某节点上所有的应用
  $ srvctl stop nodeapps -n host1(host2) --停止某节点上所有的应用
  $ srvctl start listener -n host1(host2) --启动某个节点的listener
  $ srvctl stop listener -n host1(host2) --停止某个节点的listener
  $ srvctl start instance -d db -i host1(host2) --启动某个instance
  $ srvctl stop instance -d db -i host1(host2) --停止某个instance
  $ srvctl start database -d db --启动数据库
  $ srvctl stop database -d db --停止数据库
  $crs_stop资源名(ora.ORCL.ORATEST.cs) 停一个资源,此命令可停到资源状态为UNKNOWN的资源。
  附Oracle10g RAC检查命令:
  ----------------------------------------------
  Oracle10g RAC数据库的 nodeapps 有VIP, GSD, Listener, ONS .
  $ srvctl status nodeapps –n host1 (检查VIP, GSD,ONS, Listener等(所有节点))
  VIP is running on node: host1
  GSD is not running on node: host1
  Listener is not running on node: host1
  ONS daemon is not running on node: host1
  gnd-rac01$crsctl check crs (检查Oracle Cluster状态:CSS, CRS, EVM .)
  CSS appears healthy
  CRS appears healthy
  EVM appears healthy
  gnd-rac01$ crs_stat -t (全面检查状态)
  NameTypeTargetStateHost
  ┅┅┅┅┅┅┅┅┅
  ora....01.lsnr application ONLINE ONLINE host1
  ora....c01.gsd application ONLINE ONLINE host1
  ora....c01.ons application ONLINE ONLINE host1
  SRVCTL命令介绍
  SRVCTL命令可以控制RAC数据库中的instance,listener以及services。
  通常SRVCTL在ORACLE用户下执行。下面我们来介绍srvctl命令。
  1、通过SRVCTL命令来start/stop/check所有的实例:
  $ srvctl start|stop|status database -d
  2、start/stop指定的实例:
  $ srvctl start|stop|status instance -d-i
  3、列出当前RAC下所有的
  $ srvctl config database -d
  4、start/stop/check所有的nodeapps,比如:VIP, GSD, listener, ONS:
  $ srvctl start|stop|status nodeapps -n
  5、如果你使用ASM,srvctl也可以start/stop ASM实例:
  $ srvctl start|stop asm -n[-i ] [-o]
  6、可以获取所有的环境信息:
  $ srvctl getenv database -d[-i ]
  7、设置全局环境和变量:
  $ srvctl setenv database -d-t
  8、从OCR中删除已有的数据库:
  $ srvctl remove database -d
  9、向OCR中添加一个数据库:
  $ srvctl add database -d-o
  [-m ] [-p] [-A /netmask] [-r {PRIMARY | PHYSICAL_STANDBY |LOGICAL_STANDBY}] [-s ]
  10、向OCR中添加一个数据库的实例:
  $ srvctl add instance -d-i-n
  $ srvctl add instance -d-i-n
  11、向OCR中添加一个ASM实例:
  $ srvctl add asm -n-i-o
  12、添加一个service
  $ srvctl add service -d
  $ORA_CRS_HOME/bin/crsctl check crs用于检查后台进程状态
  $ORA_CRS_HOME/bin/crsctl start resources启动crs资源
  $ORA_CRS_HOME/bin/crsctl start crs启动crs,需要超级用户操作。
  $ORA_CRS_HOME/bin/crsctl stop crs关闭crs,需要超级用户操作。
  $ORA_CRS_HOME/bin/crs_unregister取消注册crs
  $ORA_CRS_HOME/bin/ocrcheck检查ocr设置信息用ocrcheck
  $ORA_CRS_HOME/bin/crsctl query css votedisk检查磁盘表决情况
  2:集群的日志:
  $ORA_CRS_HOME/log/节点主机名(rachost01)/racg
  $ORA_CRS_HOME/log/节点主机名(rachost01)/crsd
  $ORA_CRS_HOME/crs/init
  $ORA_CRS_HOME/css/log
  $ORA_CRS_HOME/css/init
  $ORA_CRS_HOME/evm/log
  $ORA_CRS_HOME/evm/init
  $ORA_CRS_HOME/srvm/log

页: [1]
查看完整版本: oracle crs起停步骤及srvctl crsctl 命令用法