oracle DG切换操作

本文详细介绍了Oracle数据库的主备切换(switchover)流程,包括在Primary和Standby数据库上的具体操作步骤,以及在主库发生宕机(failover)情况下的应急处理方法。通过SQL命令演示如何进行角色转换、重启数据库、调整状态及应用日志等关键步骤。

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

一、主备切换( switch over )
Primary数据库操作
1 )确认主机打开方式
SQL> select DATABASE_ROLE,PROTECTION_MODE,open_mode fromvdatabase;2)切换到备机模式SQL>ALTERDATABASECOMMITTOSWITCHOVERTOPHYSICALSTANDBY;Standby数据库操作1)取消备机日志应用SQL>alterdatabaserecovermanagedstandbydatabasecancel;2)切换到主机模式SQL>ALTERDATABASECOMMITTOSWITCHOVERTOPRIMARY;3)重启备库SQL>SHUTDOWNIMMEDIATE;SQL>STARTUP;Primary数据库操作1)重启主库SQL>SHUTDOWNIMMEDIATE;SQL>STARTUPMOUNT;2)调整为“READONLY”状态SQL>alterdatabaseopen;3)应用日志SQL>alterdatabaserecovermanagedstandbydatabaseusingcurrentlogfiledisconnect;4)确认openmode为“READONLYWITHAPPLY”SQL>selectopenmodefromvdatabase; 2 )切换到备机模式 SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY; Standby数据库操作 1 )取消备机日志应用 SQL> alter database recover managed standby database cancel; 2 )切换到主机模式 SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY; 3 )重启备库 SQL> SHUTDOWN IMMEDIATE; SQL> STARTUP; Primary数据库操作 1 )重启主库 SQL> SHUTDOWN IMMEDIATE; SQL> STARTUP MOUNT; 2 )调整为“ READONLY ”状态 SQL> alter database open; 3 )应用日志 SQL> alter database recover managed standby database usingcurrent logfile disconnect; 4 )确认 open_mode 为“ READ ONLY WITH APPLY ” SQL> select open_mode from vdatabase;2SQL>ALTERDATABASECOMMITTOSWITCHOVERTOPHYSICALSTANDBY;Standby1SQL>alterdatabaserecovermanagedstandbydatabasecancel;2SQL>ALTERDATABASECOMMITTOSWITCHOVERTOPRIMARY;3SQL>SHUTDOWNIMMEDIATE;SQL>STARTUP;Primary1SQL>SHUTDOWNIMMEDIATE;SQL>STARTUPMOUNT;2READONLYSQL>alterdatabaseopen;3SQL>alterdatabaserecovermanagedstandbydatabaseusingcurrentlogfiledisconnect;4openmodeREADONLYWITHAPPLYSQL>selectopenmodefromvdatabase;
5 )测试
在原备机上插入数据,测试原主机是否收到。
二、主库宕机( failover )
primary数据库操作
$ ps –ef | grep pmon
$ kill -9 {pid_pmon}
Standby数据库操作

  1. 取消 standby 日志应用
    standby SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASECANCEL;
    standby SQL> alter database recover managed standby databasefinish;
    如果没有应用standby redolog,此处使用下面的命令:
    standby SQL> alter database recover managed standby databasefinish skip standby logfile;
    2 )重启 db 到 mount 状态
    standby SQL> shutdown immediate;
    standby SQL> startup mount;
    3 )切换到主机模式
    standby SQL> alter database commit to switchover to primary;
    standby SQL> alter database open;
    5 )test 测试
    测试原备机是否可以连接使用,并统计丢失数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值