编程技术分享平台

网站首页 > 技术教程 正文

Physical Standby 和Snapshot Standby相互转换

xnh888 2024-11-11 14:45:43 技术教程 29 ℃ 0 评论

介绍

Snapshot Standby(快照备库)可将备库置于read-write状态,用来代替生产环境做测试(保证了数据和生产环境一致),测试完成后,可将Snapshot Standby库重新转换为Physical Standby角色!在转换期间,Snapshot Standby依然可以接受来自主库的日志,但是不会应用到备库中。当Snapshot Standby重新转换成physical standby后,才会重新应用来自主库的日志!同时,在Snapshot Standby状态时产生的所有数据都将丢失!


服务器ip

数据库版本

db_name

db_unique_name

主库

192.168.141.109

12.2.0.1

testdb

testdbp

备库

192.168.141.114

12.2.0.1

testdb

testdbs

本文在已经按照文章《物理Data Guard-12C》搭建好了物理DG,并且同步测试没有问题的前提下,做Physical Standby 和Snapshot Standby相互转换!本次操作主要在备库上执行,个别验证操作需要主库配合完成!

Physical Standby转换成Snapshot Standby

1.状态查看

select name,log_mode,open_mode,database_role,switchover_status from v$database;

检查备库状态并确认当前主备库同步正常!

2.停止redo apply

alter database recover managed standby database cancel;

3.让物理备库置于mounted状态

alter database close;或shutdown immediate;

startup mount;

4.切换备库到Snapshot Standby状态

alter database convert to snapshot standby;

alter 日志显示切换成功:

5.查看状态:

select open_mode,database_role from v$database;

显示数据库角色为Snapshot Standby!

6.将Snapshot Standby库置于read-write状态

alter database open;

打开当前数据库,就可以当做一个普通的数据库使用,可以执行增删查改操作!

7.验证

在Snapshot Standby数据库中,创建一张表,插入数据并提交,说明功能正常。

create table SS01(id number);

insert into SS01 values(12345);

commit;

验证主库归档日志是否能传到备库上:

在主库上查看当前日志序列号,然后切换一次日志:

在备库的归档日志路径下查看已有的归档日志,并等待主库切换日志后,查看新的归档日志是否传输过来:

结论: Snapshot Standby数据库可以当做正常数据库使用,并且依然接收来自主库的归档日志,但是不会应用到数据库中。

Snapshot Standby转换成Physical Standby

1.重启Snapshot Standby库到mounted状态

shutdown immediate;

startup mount;

2.转换成physical standby状态

alter database convert to physical standby;

alter 日志中信息展示,说明切换成功!且备库还是mounted状态!

3.open备库并开启日志实时应用

alter database open;

ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;

alter日志信息展示,可以看到,重新开始应用在转换期间传过来且没有应用到数据库的归档日志!


4.验证

归档日志应用查询:

SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

查询SS01表是否还存在,说明在Snapshot Standby期间的生成的数据已经丢失。

验证主备同步是否正常:

在主库上创建新表,并插入数据

在备库上查询这张表

结论:Snapshot Standby转换回Physical Standby后,依然能继续同步主库数据!

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表