加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Oracle  RAC关闭及启动

(2014-12-03 21:55:29)
标签:

股票

分类: ORACLE

安装完RAC集群后,第一件事就是就是要学习如何启动和关闭,启动和关闭rac一般使用三种方式:sqlplus,srvctl以及dbconsole或者oracle grid control,本节中简要介绍下使用srvctl启动和关闭rac数据库集群!

使用crs_stat命令可以查询当前rac各节点下的asm实例,监听器,global service daemon,oracle notification server,vip,数据库实例是否正常!

[root@rac1 ~]# su - oracle
[oracle@rac1 ~]$ crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host       
----------------------------------------------------------------------
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    ONLINE    ONLINE    rac1       
ora.rac1.ons   application    0/3    0/0    ONLINE    ONLINE    rac1       
ora.rac1.vip   application    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    ONLINE    ONLINE    rac2       
ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2       
ora.rac2.vip   application    0/0    0/0    ONLINE    ONLINE    rac2       
ora.racdb.db   application    0/1    0/1    ONLINE    ONLINE    rac1       
ora....b1.inst application    0/5    0/0    ONLINE    ONLINE    rac1       
ora....b2.inst application    0/5    0/0    ONLINE    ONLINE    rac2   

srvctl命令的使用
srvctl是service control的缩写,基本的用法是srvctl [],使用srvctl命令,可以对rac各个节点的数据库实例,asm实例和监听器等进行管理,挺方便的工具

[oracle@rac2 ~]$ srvctl
Usage: srvctl []
    command: enable|disable|start|stop|relocate|status|add|remove|modify|getenv|setenv|unsetenv|config
    objects: database|instance|service|nodeapps|asm|listener
For detailed help on each command and object and its options use:
    srvctl -h

获取更详细的帮助
[oracle@rac2 ~]$ srvctl start asm -h
Usage: srvctl start asm -n [-i ] [-o ] [-c | -q]
    -n            Node name
    -i   ASM instance name
    -o   Options to startup command (e.g. open, mount, or nomount)
    -c         Connect string (default: / as sysdba)
    -q                  Query connect string from standard input
    -h                  Print usage

关闭rac数据库

[oracle@rac2 ~]$ srvctl stop database -d racdb
[oracle@rac2 ~]$ crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host       
----------------------------------------------------------------------
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    ONLINE    ONLINE    rac1       
ora.rac1.ons   application    0/3    0/0    ONLINE    ONLINE    rac1       
ora.rac1.vip   application    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    ONLINE    ONLINE    rac2       
ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2       
ora.rac2.vip   application    0/0    0/0    ONLINE    ONLINE    rac2       
ora.racdb.db   application    0/1    0/1    OFFLINE   OFFLINE              
ora....b1.inst application    0/5    0/0    OFFLINE   OFFLINE              
ora....b2.inst application    0/5    0/0    OFFLINE   OFFLINE    

关闭各节点的asm实例

[oracle@rac2 ~]$ srvctl stop asm -n rac1
[oracle@rac2 ~]$ srvctl stop asm -n rac2
[oracle@rac2 ~]$ crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host       
----------------------------------------------------------------------
ora....SM1.asm application    0/5    0/0    OFFLINE   OFFLINE              
ora....C1.lsnr application    0/5    0/0    ONLINE    ONLINE    rac1       
ora.rac1.gsd   application    0/5    0/0    ONLINE    ONLINE    rac1       
ora.rac1.ons   application    0/3    0/0    ONLINE    ONLINE    rac1       
ora.rac1.vip   application    0/0    0/0    ONLINE    ONLINE    rac1       
ora....SM2.asm application    0/5    0/0    OFFLINE   OFFLINE              
ora....C2.lsnr application    0/5    0/0    ONLINE    ONLINE    rac2       
ora.rac2.gsd   application    0/5    0/0    ONLINE    ONLINE    rac2       
ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2       
ora.rac2.vip   application    0/0    0/0    ONLINE    ONLINE    rac2       
ora.racdb.db   application    0/1    0/1    OFFLINE   OFFLINE              
ora....b1.inst application    0/5    0/0    OFFLINE   OFFLINE              
ora....b2.inst application    0/5    0/0    OFFLINE   OFFLINE  

关闭各节点的服务,包括gsd,ons,vip以及监听器

[oracle@rac2 ~]$ srvctl stop nodeapps -n rac1
[oracle@rac2 ~]$ srvctl stop nodeapps -n rac2
[oracle@rac2 ~]$ crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host       
----------------------------------------------------------------------
ora....SM1.asm application    0/5    0/0    OFFLINE   OFFLINE              
ora....C1.lsnr application    0/5    0/0    OFFLINE   OFFLINE              
ora.rac1.gsd   application    0/5    0/0    OFFLINE   OFFLINE              
ora.rac1.ons   application    0/3    0/0    OFFLINE   OFFLINE              
ora.rac1.vip   application    0/0    0/0    OFFLINE   OFFLINE              
ora....SM2.asm application    0/5    0/0    OFFLINE   OFFLINE              
ora....C2.lsnr application    0/5    0/0    OFFLINE   OFFLINE              
ora.rac2.gsd   application    0/5    0/0    OFFLINE   OFFLINE              
ora.rac2.ons   application    0/3    0/0    OFFLINE   OFFLINE              
ora.rac2.vip   application    0/0    0/0    OFFLINE   OFFLINE              
ora.racdb.db   application    0/1    0/1    OFFLINE   OFFLINE              
ora....b1.inst application    0/5    0/0    OFFLINE   OFFLINE              
ora....b2.inst application    0/5    0/0    OFFLINE   OFFLINE

rac数据的关闭顺序是:关闭集群数据库实例--关闭各节点ASM实例--关闭各节点服务,启动的顺序则相反!

[oracle@rac2 ~]$ srvctl start nodeapps -n rac1
[oracle@rac2 ~]$ srvctl start nodeapps -n rac2
[oracle@rac2 ~]$ srvctl start asm -n rac1
[oracle@rac2 ~]$ srvctl start asm -n rac2
[oracle@rac2 ~]$ srvctl start instance -d racdb -i racdb1 -o mount
[oracle@rac2 ~]$ srvctl start instance -d racdb -i racdb2 -o open

[oracle@rac2 ~]$ sqlplus sys/123456@racdb1 as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Sat Nov 26 12:15:57 2011
Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options

SQL> select open_mode,name  from v$database;

OPEN_MODE                      NAME
------------------------------ ---------------------------
MOUNTED                        RACDB

SQL> conn sys/123456@racdb2 as sysdba
Connected.
SQL> select open_mode,name  from v$database;

OPEN_MODE                      NAME
------------------------------ ---------------------------
READ WRITE                     RACDB

关闭rac节点中的某个实例

[oracle@rac2 ~]$ srvctl stop instance -d racdb -i racdb1 -o immediate
[oracle@rac2 ~]$ srvctl stop asm -n rac1
[oracle@rac2 ~]$ srvctl stop nodeapps -n rac1
[oracle@rac2 ~]$ crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host       
----------------------------------------------------------------------
ora....SM1.asm application    0/5    0/0    OFFLINE   OFFLINE              
ora....C1.lsnr application    0/5    0/0    OFFLINE   OFFLINE              
ora.rac1.gsd   application    0/5    0/0    OFFLINE   OFFLINE              
ora.rac1.ons   application    0/3    0/0    OFFLINE   OFFLINE              
ora.rac1.vip   application    0/0    0/0    OFFLINE   OFFLINE              
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    ONLINE    ONLINE    rac2       
ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2       
ora.rac2.vip   application    0/0    0/0    ONLINE    ONLINE    rac2       
ora.racdb.db   application    0/1    0/1    ONLINE    ONLINE    rac2       
ora....b1.inst application    0/5    0/0    OFFLINE   OFFLINE              
ora....b2.inst application    0/5    0/0    ONLINE    ONLINE    rac2  

禁止asm实例和数据库实例自启动

[oracle@rac2 ~]$ srvctl disable asm -n rac1
[oracle@rac2 ~]$ srvctl disable asm -n rac2
[oracle@rac2 ~]$ srvctl disable database -d racdb
[oracle@rac1 ~]$ uptime
 21:46:45 up 2 min,  1 user,  load average: 2.03, 0.78, 0.28
[oracle@rac1 ~]$ crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host       
----------------------------------------------------------------------
ora....SM1.asm application    0/5    0/0    ONLINE    OFFLINE              
ora....C1.lsnr application    0/5    0/0    ONLINE    ONLINE    rac1       
ora.rac1.gsd   application    0/5    0/0    ONLINE    ONLINE    rac1       
ora.rac1.ons   application    0/3    0/0    ONLINE    ONLINE    rac1       
ora.rac1.vip   application    0/0    0/0    ONLINE    ONLINE    rac1       
ora....SM2.asm application    0/5    0/0    ONLINE    OFFLINE              
ora....C2.lsnr application    0/5    0/0    ONLINE    ONLINE    rac2       
ora.rac2.gsd   application    0/5    0/0    ONLINE    ONLINE    rac2       
ora.rac2.ons   application    0/3    0/0    ONLINE    ONLINE    rac2       
ora.rac2.vip   application    0/0    0/0    ONLINE    ONLINE    rac2       
ora.racdb.db   application    0/1    0/1    OFFLINE   OFFLINE              
ora....b1.inst application    0/1    0/0    OFFLINE   OFFLINE              
ora....b2.inst application    0/1    0/0    OFFLINE   OFFLINE     
----------------------------------------------------------------------
情况1: 保养数据库及操作系统,服务器,需要关闭DB(所有实例),OS及Server

a. 首先停止Oracle10g 环境
$ lsnrctl stop (每个节点上停止监听,也可以用srvctl来操作)
$ emctl stop dbconsole (每个节点停止dbconsole)
$ srvctl stop database -d RACDB (停止数据库所有实例)
$ srvctl stop nodeapps -n node1 (停节点1服务)
$ srvctl stop nodeapps -n node2 (停节点2服务)
# /etc/init.d/init.crs stop (root 停cluster 软件)(两节点)
或者用 $ crs_stop -all
crsctl stop crs
b. 然后# init 0 关闭服务器,或者如果重新启动#init 6
c. 关闭电源 。
d. 开启Server ,开始开启Oracle10g数据库及服务等(如果OS重新启动,那么下面的所有服务是自动打开的【除了dbconsole】,不用手工执行了)。
$ srvctl start nodeapps -n node1 (开启节点1服务)
$ srvctl start nodeapps -n node2 (开启节点2服务)
# /etc/init.d/init.crs start (root  开启cluster 软件)
或者用 $ crs_start -all
$ srvctl start database -d RACDB (开启数据库所有实例)
$ lsnrctl start (每个节点上停止监听,也可以用srvctl来操作)
$ emctl start dbconsole (每个节点开启dbconsole)

注: srvctl 也可以用来关闭某个实例:
srvctl stop instance -d RACDB -i RACDB1

srvctl 开启关闭监听器:
srvctl stop listener -n orcl2
srvctl start listener -n orcl2

情况2: 调整数据库参数的时候,只关闭所有节点实例,不重新启动OS及Server 。

a.首先停止Oracle10g 环境
$ lsnrctl stop (在所有节点上停止监听,也可以用srvctl)
$ srvctl stop database -d tpc (停止数据库所有实例)
b. 然后开启所有实例及监听器。
$ srvctl start database -d tpc (开启数据库所有实例)
$ lsnrctl start (开启所有节点上监听,也可以用srvctl 开启监听)


情况3: 不关闭操作系统的情况下,由于问题点或调整某些服务而需要关闭然后开启某些服务程序等
关闭某些服务的时候,由于涉及到RAC运行,所以也需要先关闭数据库实例,类似于第一种情况。

 
 
附Oracle10g RAC检查命令 :
----------------------------------------------
Oracle10g RAC数据库的 nodeapps 有 VIP, GSD, Listener, ONS .

$ srvctl status nodeapps –n dbrac1 (检查VIP, GSD,ONS, Listener 等(所有节点))
VIP is running on node: dbrac1
GSD is not running on node: dbrac1
Listener is not running on node: dbrac1
ONS daemon is not running on node: dbrac1

gnd-rac01$crsctl check crs (检查Oracle Cluster 状态: CSS, CRS, EVM .)
CSS appears healthy
CRS appears healthy
EVM appears healthy

gnd-rac01$ crs_stat -t (全面检查状态 )

Name Type Target State Host
┅┅┅┅┅┅┅┅┅?br /> ora....01.lsnr application ONLINE ONLINE gnd-rac01
ora....c01.gsd application ONLINE ONLINE gnd-rac01
ora....c01.ons application ONLINE ONLINE gnd-rac01
ora....c01.vip application ONLINE ONLINE gnd-rac01
ora....02.lsnr application OFFLINE OFFLINE
ora....c02.gsd application ONLINE ONLINE gnd-rac02
ora....c02.ons application ONLINE ONLINE gnd-rac02
ora....c02.vip application ONLINE ONLINE gnd-rac02
ora.tpc.db application ONLINE ONLINE gnd-rac01
ora....c1.inst application ONLINE ONLINE gnd-rac01


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有