一. 检查共享设备

  一般情况下,存放OCR和Voting Disk的OCFS2 或者raw 都是自动启动的。 如果他们没有启动,RAC 肯定是启动不了。

1.1 如果使用ocfs2的

  检查ocfs2 状态:/etc/init.d/o2cb status

  在挂载之前,/etc/init.d/o2cb status 显示为Checking O2CB heartbeat: Not active。在格式化和挂载文件系统之前,应验证 O2CB 在两个节点上均联机;O2CB 心跳当前没有活动,因为文件系统还没有挂载 。挂载之后就会变成active。mount -t ocfs2 -o datavolume /dev/sdb1 /u02/oradata/orcl

1.2 如果使用raw device

  1. [oracle@node1 raw]$ cd /dev/raw/
  2. [oracle@node1 raw]$ ls -l
  3. total
  4. crw-r----- oracle oinstall , Jun : raw1
  5. crw-r----- oracle oinstall , Jun : raw2
  6. crw-r----- oracle oinstall , Jun : raw3
  7. crw-r----- oracle oinstall , Jun : raw4
  8. [oracle@node1 raw]$
  9. 或者:
  10. [root@raw1 init.d]# /etc/init.d/rawdevices status
  11. /dev/raw/raw1: bound to major , minor
  12. /dev/raw/raw2: bound to major , minor

1.3. 检查ASM

  1. [oracle@node1 ~]$ /etc/init.d/oracleasm listdisks
  2. VOL1
  3. VOL2
  4. [oracle@node1 ~]$

二. 自动启动RAC并检查相关进程

  1. RAC 在启动的时候crs 等进程都是自动启动的:
  2. [oracle@node1 ~]$ ls -l /etc/init.d/init.*
  3. -r-xr-xr-x root root Mar : /etc/init.d/init.crs
  4. -r-xr-xr-x root root Mar : /etc/init.d/init.crsd
  5. -r-xr-xr-x root root Mar : /etc/init.d/init.cssd
  6. -r-xr-xr-x root root Mar : /etc/init.d/init.evmd
  7. [oracle@node1 ~]$

查看一下crs 的状态,正常情况下, 进程都是online的:

  1. [root@raw1 bin]# ./crs_stat -t
  2. Name Type Target State Host
  3. ------------------------------------------------------------
  4. ora.raw.db application ONLINE ONLINE raw1
  5. ora.raw.raw.cs application ONLINE ONLINE raw1
  6. ora....aw1.srv application ONLINE ONLINE raw1
  7. ora....aw2.srv application ONLINE ONLINE raw2
  8. ora....w1.inst application ONLINE ONLINE raw1
  9. ora....w2.inst application ONLINE ONLINE raw2
  10. ora....SM1.asm application ONLINE ONLINE raw1
  11. ora....W1.lsnr application ONLINE ONLINE raw1
  12. ora.raw1.gsd application ONLINE ONLINE raw1
  13. ora.raw1.ons application ONLINE ONLINE raw1
  14. ora.raw1.vip application ONLINE ONLINE raw1
  15. ora....SM2.asm application ONLINE ONLINE raw2
  16. ora....W2.lsnr application ONLINE ONLINE raw2
  17. ora.raw2.gsd application ONLINE ONLINE raw2
  18. ora.raw2.ons application ONLINE ONLINE raw2
  19. ora.raw2.vip application ONLINE ONLINE raw2

如果出现以下情况:UNKNOWN状态

  1. [root@rac2 bin]# ./crs_stat -t
  2. Name Type Target State Host
  3. ------------------------------------------------------------
  4. ora.rac.db application ONLINE UNKNOWN rac1
  5. ora....orcl.cs application ONLINE UNKNOWN rac1
  6. ora....ac1.srv application OFFLINE OFFLINE
  7. ora....ac2.srv application OFFLINE OFFLINE
  8. ora....c1.inst application ONLINE UNKNOWN rac1
  9. ora....c2.inst application ONLINE UNKNOWN rac2
  10. ora....SM1.asm application ONLINE ONLINE rac1
  11. ora....C1.lsnr application ONLINE UNKNOWN rac1
  12. ora.rac1.gsd application ONLINE UNKNOWN rac1
  13. ora.rac1.ons application ONLINE ONLINE rac1
  14. ora.rac1.vip application ONLINE ONLINE rac1
  15. ora....SM2.asm application ONLINE ONLINE rac2
  16. ora....C2.lsnr application ONLINE UNKNOWN rac2
  17. ora.rac2.gsd application ONLINE UNKNOWN rac2
  18. ora.rac2.ons application ONLINE ONLINE rac2
  19. ora.rac2.vip application ONLINE ONLINE rac2

解决方法:

  1. . crs_stat 查看进程全部信息:
  2. [root@rac2 bin]# ./crs_stat
  3. NAME=ora.rac.db
  4. TYPE=application
  5. TARGET=ONLINE
  6. STATE=ONLINE on rac2
  7.  
  8. NAME=ora.rac1.LISTENER_RAC1.lsnr
  9. TYPE=application
  10. TARGET=ONLINE
  11. STATE=UNKNOWN on rac1
  12.  
  13. NAME=ora.rac1.gsd
  14. TYPE=application
  15. TARGET=ONLINE
  16. STATE=UNKNOWN on rac1
  17.  
  18. NAME=ora.rac2.LISTENER_RAC2.lsnr
  19. TYPE=application
  20. TARGET=ONLINE
  21. STATE=UNKNOWN on rac2
  22. ... ...
  23.  
  24. . 对于offline 的进程,我们可以直接手动的启动它
  25. [root@rac2 bin]# ./crs_start ora.rac.orcl.rac1.srv
  26. Attempting to start `ora.rac.orcl.rac1.srv` on member `rac1`
  27. Start of `ora.rac.orcl.rac1.srv` on member `rac1` succeeded.
  28.  
  29. . 对于UNKNOWN 的进程,我们可以先stop 它, start
  30. [root@rac2 bin]# ./crs_stop ora.rac2.gsd
  31. Attempting to stop `ora.rac2.gsd` on member `rac2`
  32. Stop of `ora.rac2.gsd` on member `rac2` succeeded.
  33. [root@rac2 bin]# ./crs_start ora.rac2.gsd
  34. Attempting to start `ora.rac2.gsd` on member `rac2`
  35. Start of `ora.rac2.gsd` on member `rac2` succeeded.
  36.  
  37. . 如果crs_stop不能结束,crs_start 不能启动的进程,我们有2中方法来解决:
  38. 4.1)是用crs_stop -f 参数把crs中状态是UNKNOWN的服务关掉,然后再用crs_start -f (加一个-f的参数)启动所
  39. 有的服务就可以。要分别在两个节点上执行;
  40. [oracle@rac2 ~]$ crs_start -f ora.ora9i.ora9i2.inst
  41. Attempting to start `ora.ora9i.ora9i2.inst` on member `rac2`
  42. Start of `ora.ora9i.ora9i2.inst` on member `rac2` succeeded.
  43. [oracle@rac2 ~]$ crs_stop -f ora.ora9i.db
  44. Attempting to stop `ora.ora9i.db` on member `rac2`
  45. Stop of `ora.ora9i.db` on member `rac2` succeeded.
  46.  
  47. 4.2)转换到root用户下用/etc/init.d/init.crs stop先禁用crs,然后再用/etc/init.d/init.crs start去启用crs
  48. 启用crs后会自动启动crs的一系列服务,注意此种方法需要在两台节点上都执行;
  49.  
  50. . 可以用命令一次启动和关闭相关进程
  51. [root@rac2 bin]# ./crs_stop -all
  52. [root@rac2 bin]# ./crs_start -all

三. 手动启动RAC

  一般情况下每次节点启动的时候,所有服务都会自动启动,如果需要关闭或者启动某个节点,如下所示

  1. 停止RAC
  2. emctl stop dbconsole (EM控制台,根据自己是否安装EM 执行)
  3. srvctl stop instance -d <dbname> -i <instance_name1>
  4. srvctl stop instance -d <dbname> -i <instance_name2>
  5. srvctl stop asm -n <node_name1>
  6. srvctl stop asm -n <node_name2>
  7. srvctl stop nodeapps -n <node_name1>
  8. srvctl stop nodeapps -n <node_name2>
  9. 启动RAC
  10. 和上面的步骤正好相反即
  11. srvctl start nodeapps -n <node_name1>
  12. srvctl start nodeapps -n <node_name2>
  13. srvctl start asm -n <node_name1>
  14. srvctl start asm -n <node_name2>
  15. srvctl start instance -d <dbname> -i <node_name2>
  16. srvctl start instance -d <dbname> -i <node_name1>
  17. emctl start dbconsole
  18.  
  19. 使用 SRVCTL 启动/停止所有实例及其启用的服务。
  20. srvctl start database -d <dbname>
  21. srvctl stop database -d <dbname>

  注:CRS Resource 包括GSD(Global Serveice Daemon),ONS(Oracle Notification Service),VIP, Database, Instance 和 Service. 这些资源被分成2类:GSD,ONS,VIP 和 Listener 属于Noteapps类;Database,Instance 和Service 属于 Database-Related Resource 类。

示例:

  1. [root@raw1 bin]# ./crs_stat -t
  2. Name Type Target State Host
  3. ------------------------------------------------------------
  4. ora.raw.db application ONLINE ONLINE raw1
  5. ora.raw.raw.cs application ONLINE ONLINE raw1
  6. ora....aw1.srv application ONLINE ONLINE raw1
  7. ora....aw2.srv application ONLINE ONLINE raw2
  8. ora....w1.inst application ONLINE ONLINE raw1
  9. ora....w2.inst application ONLINE ONLINE raw2
  10. ora....SM1.asm application ONLINE ONLINE raw1
  11. ora....W1.lsnr application ONLINE ONLINE raw1
  12. ora.raw1.gsd application ONLINE ONLINE raw1
  13. ora.raw1.ons application ONLINE ONLINE raw1
  14. ora.raw1.vip application ONLINE ONLINE raw1
  15. ora....SM2.asm application ONLINE ONLINE raw2
  16. ora....W2.lsnr application ONLINE ONLINE raw2
  17. ora.raw2.gsd application ONLINE ONLINE raw2
  18. ora.raw2.ons application ONLINE ONLINE raw2
  19. ora.raw2.vip application ONLINE ONLINE raw2
  20.  
  21. --关闭
  22. [oracle@node1 bin]$ ./srvctl stop instance -d RACDB -i RACDB1
  23. [oracle@node1 bin]$ ./srvctl stop instance -d RACDB -i RACDB2
  24. [oracle@node1 bin]$ ./srvctl stop asm -n node1
  25. [oracle@node1 bin]$ ./srvctl stop asm -n node2
  26. [oracle@node1 bin]$ ./srvctl stop nodeapps -n node1
  27. [oracle@node1 bin]$ ./srvctl stop nodeapps -n node2
  28.  
  29. [oracle@node1 bin]$ ./crs_stat -t
  30. Name Type Target State Host
  31. ------------------------------------------------------------
  32. ora....B1.inst application OFFLINE OFFLINE
  33. ora....B2.inst application OFFLINE OFFLINE
  34. ora.RACDB.db application OFFLINE OFFLINE
  35. ora....SM1.asm application OFFLINE OFFLINE
  36. ora....E1.lsnr application OFFLINE OFFLINE
  37. ora.node1.gsd application OFFLINE OFFLINE
  38. ora.node1.ons application OFFLINE OFFLINE
  39. ora.node1.vip application OFFLINE OFFLINE
  40. ora....SM2.asm application OFFLINE OFFLINE
  41. ora....E2.lsnr application OFFLINE OFFLINE
  42. ora.node2.gsd application OFFLINE OFFLINE
  43. ora.node2.ons application OFFLINE OFFLINE
  44. ora.node2.vip application OFFLINE OFFLINE
  45. [oracle@node1 bin]$

四. 在启动的过程中最好检测着crs、ASM和数据库的日志:

  1. crs日志:
  2. [oracle@node1 node1]$ tail -f /opt/ora10g/product/10.2./crs_1/log/node1/alertnode1.log
  3.  
  4. ASM日志:
  5. [oracle@rac1 ~]$ tail -f /opt/ora10g/admin/+ASM/bdump/alert_+ASM1.log
  6.  
  7. 数据库日志:
  8. [oracle@rac1 ~]$ tail -f /opt/ora10g/admin/RACDB/bdump/alert_RACDB1.log

Oracle 10g RAC 启动与关闭的更多相关文章

  1. Oracle 10g RAC启动与关闭命令

    一. 检查共享设备 一般情况下, 存放OCR 和 Voting Disk 的OCFS2 或者raw 都是自动启动的. 如果他们没有启动,RAC 肯定是启动不了的. 1.1 如果使用ocfs2的,检查o ...

  2. Oracle 10gR2 RAC 启动与关闭

    一. 检查共享设备 一般情况下, 存放OCR 和 Voting Disk 的OCFS2 或者raw 都是自动启动的. 如果他们没有启动,RAC 肯定是启动不了的. 1.1 如果使用ocfs2的,检查o ...

  3. 【转】Oracle 10g RAC TAF

    本人转自:http://www.cnblogs.com/future2012lg/archive/2013/10/12/3365978.html Oracle RAC 同一时候具备HA(High Av ...

  4. Oracle 10g RAC TAF

    Oracle RAC 同时具备HA(High Availiablity) 和LB(LoadBalance). 而其高可用性的基础就是Failover(故障转移). 它指集群中任何一个节点的故障都不会影 ...

  5. Oracle 10g RAC的负载均衡配置[转载]

    Oracle 10g RAC的负载均衡配置 负载均衡是指连接的负载均衡.RAC的负载均衡主要是指新会话连接到RAC数据库时,如何判定这个新的连接要连到哪个节点进行工作.在RAC中,负载均衡分为两种,一 ...

  6. <Oracle Database>数据库启动与关闭

    启动和关闭Oracle数据库 要启动和关闭数据库,必须要以具有Oracle 管理员权限的用户登陆,通常也就是以具有SYSDBA权限的用户登陆.一般我们常用INTERNAL用户来启动和关闭数据库(INT ...

  7. Oracle数据库的启动和关闭

    深刻理解Oracle数据库的启动和关闭 Oracle数据库提供了几种不同的数据库启动和关闭方式,本文将详细介绍这些启动和关闭方式之间的区别以及它们各自不同的功能. 一.启动和关闭Oracle数据库 对 ...

  8. 安装Oracle 10g RAC是否需要安装HACMP

    实际上无论在哪个操作系统(AIX,HP-UX,Solaris,Linux)上安装Oracle10g RAC都不再需要Vendor Clusterware(IBM的HACMP,HP的Service Gu ...

  9. Oracle 10g RAC OCR、Voting disk更换

    环境:OEL 5.7 + Oracle 10.2.0.5 RAC 需求:更换存储,OCR.Voting disk同时需要更换到新存储. 1.替换OCR 2.替换voting disk 1.替换OCR ...

随机推荐

  1. nodejs的mysql模块学习(七)连接池事件

    连接池事件 connection 当建立连接的时候就会触发 pool.on('connection' function(connection){ connection.query('SET SESSI ...

  2. 【阿里云产品公测】rds测试感受

    阿里云用户:cncbase 公司于10.1决定改变原来的服务器自建数据库,使用rds.于近日开通rds,进行了一些测试. 信息量:500字节左右每条信息,约200万条信息/小时的吞吐量.     信息 ...

  3. 一个Java线程死锁的例子

    package com.lk.B; public class Test4 { private static final Object o1 = new Object(); private static ...

  4. 文本的输入输出(page52)

    2.2.4 再谈输入输出, 所用java类有:Out.java , In.java public class Cat{ public static void main(String[] args){ ...

  5. 剑指Offer42 左旋字符串

    /************************************************************************* > File Name: 42_LeftRo ...

  6. asp.net EF model中的默认值设置

    在做数据库规划时,通常会规划一些系统字段,也就是由数据库本身自行指定默认值到这个字段上,创建新的“创建时间(CreateDate)”字段就会常常这样设计. 如果希望能有默认值,且让.net 程序在新增 ...

  7. MongoDB - The mongo Shell, Data Types in the mongo Shell

    MongoDB BSON provides support for additional data types than JSON. Drivers provide native support fo ...

  8. JQuery Mobile 实战一

    今天我们来使用JQuery Mobile来开发一个web mobile app. 要实现的如下所示效果: 开始: 第一步:添加JS包等引用,直接去官网下载最新的JQuery Mobile 包,http ...

  9. 为Debug和Release分别设置Web.config

    需求:在开发asp.net应用程序时,往往想在debug和release环境下使用不同的配置,而web.config文件却只有一个 解决方案:可以在原来的web.config中写下debug环境下的配 ...

  10. Flex前台和后台WCF服务之间数据的接收与传输

    1.首先在flex程序中通过添加webservice,方式是主菜单Data->Connect to WebService,然后输入wsdl文档的地址.如果输入地址后始终添加不进了,或者报错,一般 ...