oracle dataguard主从,DataGuard部署及主从切换

7.添加日志文件,standby日志组的数量比redo日志组的数量多1

--主备库都执行

alter database add standby logfile group 4 ('/gp/standby/standbyrd01.log') size 50m;

alter database add standby logfile group 5 ('/gp/standby/standbyrd02.log') size 50m;

alter database add standby logfile group 6 ('/gp/standby/standbyrd03.log') size 50m;

alter database add standby logfile group 7 ('/gp/standby/standbyrd04.log') size 50m;

SQL> startup

Oracle instance started.

Total System Global Area 1073741824 bytes

Fixed Size 2089472 bytes

Variable Size 415239680 bytes

Database Buffers 591396864 bytes

Redo Buffers 65015808 bytes

Database mounted.

ORA-16004: backup database requires recovery

ORA-01194: file 1 needs more recovery to be consistent

ORA-01110: data file 1: '/opt/dgdb/oradata/dgdb/system01.dbf'

ORA-16004: backup database requires recovery

ORA-01152: file 1 was not restored from a sufficiently old backup

ORA-01110: data file 1: '/opt/dgdb/oradata/dgdb/system01.dbf'

ALTER DATABASE OPEN

Signalling error 1152 for datafile 1!

ORA-16004 signalled during: ALTER DATABASE OPEN..

alter database recover managed standby database;

--部署之后,需要先启动redo应用,然后暂停,才能open备库,不能部署之后就马上open备库。

startup mount

8.启动redo 应用

SQL> alter database recover managed standby database disconnect from session;

alter database recover managed standby database using current logfile disconnect from session;--实时

9.检查日志应用情况

暂停应用

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

select process,status,sequence# from v$managed_standby;

-- 查看日志的应用情况,对比主从的最大序列号

select max(sequence#) from v$archived_log;

select sequence#,applied,first_time,COMPLETION_TIME from v$archived_log a;

select * from (

select sequence#,applied,first_time from v$archived_log a

where applied = 'YES' order by sequence# desc ) where rownum<=5;

-- 查看灾备模式

select a.OPEN_MODE,a.PROTECTION_MODE,a.PROTECTION_LEVEL,database_role from v$database a;

SQL> select a.OPEN_MODE,a.PROTECTION_MODE,a.PROTECTION_LEVEL,database_role from v$database a;

OPEN_MODE PROTECTION_MODE PROTECTION_LEVEL DATABASE_ROLE

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

READ ONLY MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE PHYSICAL STANDBY

-------------------------主备切换----------------------------------------

-- 主库

select switchover_status from v$database;

alter database commit to switchover to physical standby;

shutdown immediate

startup mount

--备库

select switchover_status from v$database;

alter database commit to switchover to primary;

alter database open;

show parameter db_unique

----------------------切换回来-----------------------------------

-- 主库

select switchover_status from v$database;

alter database commit to switchover to physical standby;

shutdown immediate

startup mount

SQL> select switchover_status from v$database;

SWITCHOVER_STATUS

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

SWITCHOVER PENDING

SQL> alter database recover managed standby database disconnect from session;

Database altered.

SQL> select switchover_status from v$database;

SWITCHOVER_STATUS

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

TO PRIMARY

--备库

select switchover_status from v$database;

alter database commit to switchover to primary;

alter database open;

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值