rac to rac 通过主库故障通过闪回将故障主库拉回dg

本文详细记录了在 Oracle RAC 环境下,如何通过abort方式停止主库,随后在备库上执行数据库角色切换为Primary的操作流程。在完成切换后,文章进一步介绍了如何在原主库上执行闪回操作,并最终恢复其作为备库的角色,确保集群的正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验环境

Clusterware

11g R2 Grid Infrastructure (11.2.0.4)

11g R2 Grid Infrastructure (11.2.0.4)

Cluster Nodes

RAC1, RAC2 (2-node RAC)

standby1, standby2 (2-node RAC)

SCAN listener Host/port

SCAN VIPs (port 1521)

SCAN VIPs (port 1521)

VIPs

RAC1-vip,RAC2-vip

standby1-vip, standby2-vip

DB_UNIQUE_NAME

ORCL

standby

DB_NAME

ORCL

ORCL

DB Instances

ORCL1, ORCL2

ORCL1, ORCL2

DB Listener Host/port

RAC1-vip, RAC2-vip (port 1521)

standby1-vip, standby2-vip (port 1521)

DB STORAGE

ASM

ASM

ASM diskgroup for DB files

+DATA,+ARCH

+DATA02,+ARCH02

在主库上abort

[oracle@rac1 ~]$ srvctl stop database -d orcl -o abort

在备库的任意一个节点

[oracle@standby1 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Fri Oct 19 14:57:23 2018

Copyright (c) 1982, 2013, Oracle. All rights reserved.

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options

SQL>

SQL> alter database recover managed standby database cancel;

Database altered.

SQL> alter database recover managed standby database finish;

Database altered.

SQL> select open_mode,database_role,switchover_status from v$database;

OPEN_MODE DATABASE_ROLE SWITCHOVER_STATUS

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

READ ONLY PHYSICAL STANDBY TO PRIMARY

SQL> alter database commit to switchover to primary;

Database altered

SQL> select open_mode,database_role,switchover_status from gv$database;

OPEN_MODE DATABASE_ROLE SWITCHOVER_STATUS

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

MOUNTED PRIMARY NOT ALLOWED

MOUNTED PRIMARY NOT ALLOWED

SQL> alter database open;

Database altered.

查看新主库的scn好,以便闪回只用

SQL> select to_char(standby_became_primary_scn) from v$database;

TO_CHAR(STANDBY_BECAME_PRIMARY_SCN)

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

2221281

.

在原来的主库上一个节点启动实例到mount

SQL> select open_mode from v$database;

OPEN_MODE

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

MOUNTED

SQL> flashback database to scn 2221281;

Flashback complete.

SQL> alter database convert to physical standby;

Database altered.

(不能两个实例都启动到mount,不然会报错,报错如下

SQL> alter database convert to physical standby;

alter database convert to physical standby

*

ERROR at line 1:

ORA-01105: mount is incompatible with mounts by other instances)

SQL> shutdown immediate;

ORA-01507: database not mounted

 

ORACLE instance shut down.

启动数据库

[oracle@rac1 ~]$ srvctl start database -d orcl

将数据库启动到恢复模式

SQL> alter database recover managed standby database using current logfile disconnect from session;

Database altered.

SQL> select open_mode,database_role,switchover_status from gv$database;

OPEN_MODE DATABASE_ROLE SWITCHOVER_STATUS

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

READ ONLY WITH APPLY PHYSICAL STANDBY NOT ALLOWED

READ ONLY WITH APPLY PHYSICAL STANDBY NOT ALLOW

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值