Oracle 11gR2 RAC集群服务启动与关闭总结

简介:

引言:把RAC里面涉及到的最常用的启动与关闭顺序和命令逐一列举出来,由于RAC的后台资源较多,因此涉及到的命令也很多,最后附上帮助手册让在工作中临时使用时也可以迅速查到,如果这篇文章能够帮到大家就是我今后继续努力撰写的动力,感谢大家对我文章的浏览多提宝贵意见。

 关闭过程(CRS集群关闭->关闭数据库)
1.关闭数据库:
 用oracl用户执行srvctl命令
 语法:srvctl stop database -d dbname [-o immediate]
 作用:可以一次性关闭dbname的所有实例
[Oracle@rac1 ~]$ srvctl stop database -d racdb  -停止所有节点上的实例
 然后查看状态:
[oracle@rac1 ~]$ srvctl status database -d racdb     
 Instance rac1 is not running on node rac1
 Instance rac2 is not running on node race
 2.停止HAS(High Availability Services),必须以root用户操作
[root@rac1 oracle]# cd /u01/grid/11.2.0/grid/bin
 [root@rac1 bin]# ./crsctl stop has -f
 [root@rac1 bin]# ./crsctl stop crs -f
本命令只能关闭当前节点的CRS服务,因此需要在RAC的所有节点上执行,启动也一样。has与crs等同
3.停止节点集群服务,必须以root用户:
[root@rac1 oracle]# cd /u01/grid/11.2.0/grid/bin
 [root@rac1 bin]# ./crsctl stop cluster        ----停止本节点集群服务 
 [root@rac1 bin]# ./crsctl stop cluster -all   ---停止所有节点服务
 也可以如下控制所停节点:
[root@rac1 bin]# crsctl stop cluster -n rac1 rac2
 CRS-2677: Stop of 'ora.cssd' on 'rac1' succeeded
 CRS-2677: Stop of 'ora.cssd' on 'rac2' succeeded
。。。。。。。。。。。省略日志输出。。。。。。。。。。。。。。
 你如果想一条命令把所有的进程全部停止可以使用上述命令。如果不指定参数的话对当前节点有效,如果指定参数的话对相关参数节点有效。
4.检查集群进程状态
[root@rac1 bin]# crsctl check cluster
详细输出
[root@rac1 bin]# crs_stat -t -v
只检查本节点的集群状态
[root@rac1 bin]# crsctl check crs

启动过程(CRS集群启动->启动数据库)
1.启动HAS
单一节点启动
[root@rac2 ~]# crsctl start has 
 [root@rac2 ~]# crsctl start crs
 [root@rac2 ~]# crsctl check crs
 CRS-4638: Oracle High Availability Services is online
 CRS-4537: Cluster Ready Services is online
 CRS-4529: Cluster Synchronization Services is online
 CRS-4533: Event Manager is online
所有节点启动
[root@rac1 bin]# crsctl start cluster -n rac1 rac2
 CRS-4123: Oracle High Availability Services has been started.
 [root@rac1 bin]# crsctl start cluster -all
 [root@rac2 ~]# crsctl check cluster
 CRS-4537: Cluster Ready Services is online
 CRS-4529: Cluster Synchronization Services is online
 CRS-4533: Event Manager is online
此命令会在后台启动所有RAC CRS相关进程
[root@rac2 ~]# crs_stat -t -v
 CRS-0184: Cannot communicate with the CRS daemon.
因为start has启动的crs进程比较多因此会启动的比较慢,我的机器等待了5分钟,在没有完全启动成功之前会报上述错误,需要耐心等待一段时间后执行下面命令即可查看到所有CRS相关进程服务已经启动。
[root@rac2 ~]# crs_stat -t -v
 Name           Type           R/RA   F/FT   Target    State     Host        
 ----------------------------------------------------------------------
 ora.DATA.dg    ora....up.type 0/5    0/     ONLINE    ONLINE    rac1        
 ora....ER.lsnr ora....er.type 0/5    0/     ONLINE    ONLINE    rac1        
 ora....N1.lsnr ora....er.type 0/5    0/0    ONLINE    ONLINE    rac2        
 ora....N2.lsnr ora....er.type 0/5    0/0    ONLINE    ONLINE    rac1        
 ora....N3.lsnr ora....er.type 0/5    0/0    ONLINE    ONLINE    rac1        
 ora.asm        ora.asm.type   0/5    0/     ONLINE    ONLINE    rac1        
 ora.cvu        ora.cvu.type   0/5    0/0    ONLINE    ONLINE    rac1        
 ora.gsd        ora.gsd.type   0/5    0/     OFFLINE   OFFLINE               
 ora....network ora....rk.type 0/5    0/     ONLINE    ONLINE    rac1        
 ora.oc4j       ora.oc4j.type  0/1    0/2    ONLINE    ONLINE    rac1        
 ora.ons        ora.ons.type   0/3    0/     ONLINE    ONLINE    rac1        
 ora....SM1.asm application    0/5    0/0    ONLINE    ONLINE    rac1        
 ora....C1.lsnr application    0/5    0/0    ONLINE    ONLINE    rac1        
 ora.rac1.gsd   application    0/5    0/0    OFFLINE   OFFLINE               
 ora.rac1.ons   application    0/3    0/0    ONLINE    ONLINE    rac1        
 ora.rac1.vip   ora....t1.type 0/0    0/0    ONLINE    ONLINE    rac1        
 ora....SM2.asm application    0/5    0/0    ONLINE    ONLINE    rac2        
 ora....C2.lsnr application    0/5    0/0    ONLINE    ONLINE    rac2        
 ora.rac2.gsd   application    0/5    0/0    OFFLINE   OFFLINE               
 ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2        
 ora.rac2.vip   ora....t1.type 0/0    0/0    ONLINE    ONLINE    rac2        
 ora....ry.acfs ora....fs.type 0/5    0/     ONLINE    ONLINE    rac1        
 ora.scan1.vip  ora....ip.type 0/0    0/0    ONLINE    ONLINE    rac2        
 ora.scan2.vip  ora....ip.type 0/0    0/0    ONLINE    ONLINE    rac1        
 ora.scan3.vip  ora....ip.type 0/0    0/0    ONLINE    ONLINE    rac1 
说明:
 英文解释
ora.gsd is OFFLINE by default ifthere is no 9i database in the cluster.
 ora.oc4j is OFFLINE in 11.2.0.1 as DatabaseWorkload Management(DBWLM) is unavailable.  these can be ignored in11gR2 RAC.
中文解释
ora.gsd是集群服务中用于与9i数据库进行通信的一个进程,在当前版本中为了向后兼容才保存下来,状态为OFFLINE不影响CRS的正常运行与性能,我们忽略即可
ora.oc4j是在11.2.0.2以上版本中有效的服务进程,用于DBWLM的资源管理,因此在11.2.0.1以下版本并没有使用
2.启动数据库:
oracl用户执行srvctl命令:
 语法:srvctl start|stop|status database -d dbname [-o immediate]
 作用:可以一次性启动dbname的所有实例
[oracle@rac1 ~]$ srvctl start database -d racdb  -启动所有节点上的实例
 然后查看状态:
[oracle@rac1 ~]$ srvctl status database -d racdb   
 3.详细输出资源全名称并检查状态
crsctl status resource -t
 crsctl status resource
 4.常用srvctl命令
 指定dbname上某个实例
srvctl start|stop|status instance -d <dbname> -i <instance_name>
 5.显示RAC下所有实例配置与状态
srvctl status|config database -d <dbname>
 6.显示所有节点的应用服务(VIP,GSD,listener,ONS)
srvctl start|stop|status nodeapps -n<node_name>
 7.ASM进程服务管理
srvctl start|stop|status|config asm -n <nodename>[-i <asm_inst_name>] [-o<oracle_home>]
 srvctl config asm -a
 srvctl status asm -a
 6.可以获取所有的环境信息:
srvctl getenv database -d <dbname> [-i<instance_name>]
 7.设置全局环境和变量:
srvctl setenv database -d<dbname> -t LANG=en
 8.在OCR中删除已有的数据库信息
srvctl remove database -d <dbname>
 9.向OCR中添加一个数据库的实例:
srvctl add instance -d <dbname> -i<instance_name> -n <node1>
 srvctl add instance -d <dbname> -i<instance_name> -n <node2>
 10.检查监听的状态
srvctl status listener 
 srvctl config listener -a
 SCAN配置信息
srvctl config scan
 SCAN listener状态信息
srvctl status scan


小结:crsctl命令是一个集群级别命令,可以对所有集群资源进行统一启动、停止等管理操作
         srvctl命令是一个服务级别命令,可以对单一服务资源进行统一启动、停止等管理操作


 附:srvctl命令启动与停止的详细帮助
[root@rac2 ~]# srvctl start -h


 The SRVCTL start command starts, Oracle Clusterware enabled, non-running objects.


 Usage: srvctl start database -d <db_unique_name> [-o <start_options>] [-n <node>]
 Usage: srvctl start instance -d <db_unique_name> {-n <node_name> [-i <inst_name>] | -i <inst_name_list>} [-o <start_options>]
 Usage: srvctl start service -d <db_unique_name> [-s "<service_name_list>" [-n <node_name> | -i <inst_name>] ] [-o <start_options>]
 Usage: srvctl start nodeapps [-n <node_name>] [-g] [-v]
 Usage: srvctl start vip { -n <node_name> | -i <vip_name> } [-v]
 Usage: srvctl start asm [-n <node_name>] [-o <start_options>]
 Usage: srvctl start listener [-l <lsnr_name>] [-n <node_name>]
 Usage: srvctl start scan [-i <ordinal_number>] [-n <node_name>]
 Usage: srvctl start scan_listener [-n <node_name>] [-i <ordinal_number>]
 Usage: srvctl start oc4j [-v]
 Usage: srvctl start home -o <oracle_home> -s <state_file> -n <node_name>
 Usage: srvctl start filesystem -d <volume_device> [-n <node_name>]
 Usage: srvctl start diskgroup -g <dg_name> [-n "<node_list>"]
 Usage: srvctl start gns [-l <log_level>] [-n <node_name>] [-v]
 Usage: srvctl start cvu [-n <node_name>]
 For detailed help on each command and object and its options use:
   srvctl <command> <object> -h


 [root@rac2 ~]# srvctl stop -h


 The SRVCTL stop command stops, Oracle Clusterware enabled, starting or running objects.


 Usage: srvctl stop database -d <db_unique_name> [-o <stop_options>] [-f]
 Usage: srvctl stop instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>}  [-o <stop_options>] [-f]
 Usage: srvctl stop service -d <db_unique_name> [-s "<service_name_list>" [-n <node_name> | -i <inst_name>] ] [-f]
 Usage: srvctl stop nodeapps [-n <node_name>] [-g] [-f] [-r] [-v]
 Usage: srvctl stop vip { -n <node_name>  | -i <vip_name> } [-f] [-r] [-v]
 Usage: srvctl stop asm [-n <node_name>] [-o <stop_options>] [-f]
 Usage: srvctl stop listener [-l <lsnr_name>] [-n <node_name>] [-f]
 Usage: srvctl stop scan [-i <ordinal_number>] [-f]
 Usage: srvctl stop scan_listener [-i <ordinal_number>] [-f]
 Usage: srvctl stop oc4j [-f] [-v]
 Usage: srvctl stop home -o <oracle_home> -s <state_file> -n <node_name> [-t <stop_options>] [-f]
 Usage: srvctl stop filesystem -d <volume_device> [-n <node_name>] [-f]
 Usage: srvctl stop diskgroup -g <dg_name> [-n "<node_list>"] [-f]
 Usage: srvctl stop gns [-n <node_name>] [-f] [-v]
 Usage: srvctl stop cvu [-f]
 For detailed help on each command and object and its options use:
   srvctl <command> <object> -h

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12












本文转自xiaocao1314051CTO博客,原文链接:http://blog.51cto.com/xiaocao13140/1930524 ,如需转载请自行联系原作者




相关文章
|
11月前
|
存储 监控 Oracle
Oracle 的集群文件系统(Cluster File System)有哪些特点?
Oracle 集群文件系统(CFS)是 Oracle 集群架构的关键组件,允许多节点共享存储资源。其特点包括:多节点访问和高可用性、确保数据一致性的并发控制与锁管理、通过缓存和负载均衡优化性能、支持动态扩展和分布式架构、提供权限管理和加密保障安全性、与 Oracle RAC 和 ASM 集成,以及具备图形化管理界面和监控工具。
|
运维 Oracle 前端开发
Oracle 11g RAC集群日常运维命令总结
Oracle 11g RAC集群日常运维命令总结
550 2
|
存储 负载均衡 Oracle
|
存储 Oracle 关系型数据库
|
Oracle 关系型数据库
分布式锁设计问题之Oracle RAC保证多个节点写入内存Page的一致性如何解决
分布式锁设计问题之Oracle RAC保证多个节点写入内存Page的一致性如何解决
285 0
|
存储 Oracle 关系型数据库
Oracle RAC:数据库集群的舞动乐章
【4月更文挑战第19天】Oracle RAC是Oracle提供的高可用性数据库解决方案,允许多个实例共享同一数据库,确保业务连续性和数据完整性。通过集群件和全局缓存服务实现服务器间的协调和通信。RAC提供高可用性,通过故障转移应对故障,同时提升性能,多个实例并行处理请求。作为数据管理员,理解RAC的架构和管理至关重要,以发挥其在数据管理中的最大价值。
|
3月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】Oracle数据库配置助手:DBCA
Oracle数据库配置助手(DBCA)是用于创建和配置Oracle数据库的工具,支持图形界面和静默执行模式。本文介绍了使用DBCA在Linux环境下创建数据库的完整步骤,包括选择数据库操作类型、配置存储与网络选项、设置管理密码等,并提供了界面截图与视频讲解,帮助用户快速掌握数据库创建流程。
389 93
|
2月前
|
Oracle 关系型数据库 Linux
【赵渝强老师】使用NetManager创建Oracle数据库的监听器
Oracle NetManager是数据库网络配置工具,用于创建监听器、配置服务命名与网络连接,支持多数据库共享监听,确保客户端与服务器通信顺畅。
224 0
|
5月前
|
存储 Oracle 关系型数据库
服务器数据恢复—光纤存储上oracle数据库数据恢复案例
一台光纤服务器存储上有16块FC硬盘,上层部署了Oracle数据库。服务器存储前面板2个硬盘指示灯显示异常,存储映射到linux操作系统上的卷挂载不上,业务中断。 通过storage manager查看存储状态,发现逻辑卷状态失败。再查看物理磁盘状态,发现其中一块盘报告“警告”,硬盘指示灯显示异常的2块盘报告“失败”。 将当前存储的完整日志状态备份下来,解析备份出来的存储日志并获得了关于逻辑卷结构的部分信息。