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

oracle rac/dg 起停步骤

(2014-07-30 22:39:00)
标签:

it

oracle

杭州美创科技有限公司

分类: RAC

rac关机步骤

情况1:保养数据库及操作系统,服务器,需要关闭DB(所有实例),OS及Server

以oracle用户登录,在其中一个节点上(通常是第1个节点),运行命令,先关闭数据库或者关闭单个实例:

 

oracle11g环境

a.  首先停止Oracle11g 环境

# su - grid

$ lsnrctl stop (每个节点上停止监听,也可以用srvctl来操作)

# su - oracle

$ emctl stop dbconsole (每个节点停止dbconsole)

$ srvctl stop database -d RACDB(数据库名) -o immediate (停止数据库所有实例)

$ srvctl stop asm -n node1(主机名) (停节点1服务)

$ srvctl stop asm -n node2(主机名) (停节点2服务)

# su - grid

$crs_stop -all

b. 然后# init 0 关闭服务器,或者如果重新启动#init 6

c. 关闭电源

 

oracle 10g环境

a. 首先停止Oracle10g 环境

$ lsnrctl stop (每个节点上停止监听,也可以用srvctl来操作)

$ emctl stop dbconsole (每个节点停止dbconsole)

$ srvctl stop database -d RACDB -o immediate (停止数据库所有实例)

$ 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. 关闭电源 。

 

开启Server ,开始开启Oracle11g数据库及服务等(如果OS重新启动,那么下面的所有服务是自动打开的【除了dbconsole】,不用手工执行了)

开启ORACLE11G RAC 数据库

su - root

cd $CRS_HOME/bin

# ./crsctl start crs  (两个节点都要跑)

su – oracle

$srvctl start asm –n node_name

$ srvctl start database -d db_name

 

 

 

开启ORACLE10G RAC 数据库。

开启Server ,开始开启Oracle10g数据库及服务等(如果OS重新启动,那么下面的所有服务是自动打开的【除了dbconsole】,不用手工执行了)

# /etc/init.d/init.crs start (开启cluster 软件)

或者用 $ crs_start -all

$ srvctl start nodeapps -n node1 (开启节点1服务)

$ srvctl start nodeapps -n node2 (开启节点2服务)

$ srvctl start database -d RACDB (开启数据库所有实例)

$ lsnrctl start (每个节点上停止监听,也可以用srvctl来操作)

$ emctl start dbconsole (每个节点开启dbconsole)

 

 

srvctl 开启关闭监听器:

srvctl stop listener -n orcl2

srvctl start listener -n orcl2

 

查看rac的状态

2.1检查CRS的状态

oracle 11g

# su – grid

$crs_stat –t

 

oracle 10g

# su – oracle

$crs_stat –t

 

 

2.2 检查CRS的健康状况

oracle 11g

# su – grid

$crsctl check crs

 

oracle 10g

# su – oracle

$crsctl check crs

 

2.3 检查数据库是否为open 状态

oracle 11g

# su – oracle

$sqlplus / as sysdba

SQL > select status from v$instance;

 

oracle 10g

# su – oracle

$sqlplus / as sysdba

SQL > select status from v$instance;

 

 

关闭data guard

3.1关闭主库:

SQL> alter system archive log current;

SQL> shutdown immediate;

 

3.2关闭备库

SQL> SELECT PROCESS, STATUS FROM V$MANAGED_STANDBY;

检查是否处于恢复状态:

 

PROCESS   STATUS

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

ARCH      CLOSING

ARCH      CLOSING

ARCH      CONNECTED

ARCH      CLOSING

MRP0      WAIT_FOR_LOG   #处于恢复

RFS       IDLE

RFS       IDLE

RFS       IDLE

RFS       WRITING

 

9 rows selected.

 

取消恢复状态:

SQL> recover managed standby database cancel;

 

然后关闭备库:

SQL> shutdown immediate;

 

启动data guard

4.1启动备库:

[oracle@localhost ~]$ lsnrctl start

SQL> startup nomount;

SQL> alter database mount standby database;

SQL> recover managed standby database disconnect from session;

 

查看备库状态和模式:

SQL> select name,open_mode,protection_mode,database_role from v$database;

 

4.2 启动主库

SQL> select name,open_mode,protection_mode,database_role from v$database;

查看主库状态和模式

SQL> select name,open_mode,protection_mode,database_role from v$database;

在主库归档当前日志:

SQL> alter system archive log current;

监控备库:

1、查看standby库的log_archive_dest_1下应该由archive产生。

2、查询v$archived_log,有新的日志记录出现。最大sequence#,应该为主库v$log中current状态日志的序列号减一。

SQL> select sequence#,applied,first_time,next_time,resetlogs_change#,completion_time

from v$archived_log order by sequence#;

3、查看服务是否启动:

SQL> SELECT process,status,client_process,sequence#,BLOCK# FROM v$managed_standby;

4、查看是否有漏掉的归档日志

SQL> select * from v$archive_gap;

 

0

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

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

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

新浪公司 版权所有