物理备库互转快照备库

本文详细介绍了在Oracle数据库中物理备库与快照备库之间的转换流程,包括转换前的准备工作、具体操作步骤以及转换后的验证方法。通过实际案例演示了如何在测试场景下利用快照备库进行操作,而不会影响主库的数据一致性。
摘要由CSDN通过智能技术生成

物理备库互转快照备库

特点:
snapshot standby database 会从主库接收和归档 redo data,但是不会对redo data进行apply。 仅当snapshot standby 的角色转换回physical standby database 的时候才会应用之前接收的apply 文件。 然后擦除作为snapshot standby 数据库时所有的DML和DDL操作。

限制:
(1)Snapshot standby 数据库不能进行switchover 或者failover 操作。 在转换之前,也必须先从snapshot standby 转换成physical standby 以后才可以转换。

(2)Snapshot standby 不支持最大保护模式。(原因:最大保护需要real time applied)

优点:
想做测试,主库不能操作,可以将备库转为快照备库,做完测试,再转为物理备库。

将Physical Standby转成Snapshot Standby Database :

流程:

2. 确保fast recovery area已经配置(确保大小合适),但不需要启动flashback database功能。
SQL> show parameter flashback
NAME TYPE VALUE
------------------------------------ ----------- --------------------
db_flashback_retention_target integer 1440

SQL> show parameter db_recover
NAME TYPE VALUE
------------------------------------ ----------- --------
db_recovery_file_dest string +FLASH
db_recovery_file_dest_size big integer 3882M

-- 如果大小合适,不用调整大小
SQL> alter system set db_recovery_file_dest_size=10g scope=both;
System altered.

停止Redo Apply
SQL> alter database recover managed standby database cancel; 
3. 备库进行切换
SQL> ALTER DATABASE CONVERT TO SNAPSHOT STANDBY;
Database altered.

SQL> select open_mode from v$database;
OPEN_MODE
--------------------
MOUNTED

说明:备库的 alert 日志里面有详细记录,启动了一个后台进程:RVWR ,创建了一个guaranteed 的resotre point,
进行了resetlogs 的操作 。

SQL> alter database open;
Database altered.

SQL> select open_mode from v$database;
OPEN_MODE
--------------------
READ WRITE

--模拟测试
SQL> create table andysnap (id int);
Table created.

SQL> insert into andysnap values(1);
1 row created.

4. 主库日志切换,看日志是否正常传递到备库,且没有应用。
SQL> alter system switch logfile;
System altered.

备库查看

SQL> select thread#,sequence#,applied from v$archived_log;
。。。。
1 78 NO

5. 测试完毕,将 Snapshot Standby 转成 Physical Standby 
SQL> shutdown immediate;
SQL> startup mount;
SQL> alter database convert to physical standby;
Database altered.
说明: 备库 alert 有详细记录 ,转换的过程相当于 Flashback restore , 并 drop 掉restore point 。

SQL> shutdown immediate;
SQL> startup;
SQL> alter database recover managed standby database using current logfile disconnect from session;
Database altered.

6. 检测主备同步情况
主库:
SQL> select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
78
备库:

SQL> select sequence#,applied from v$archived_log;
。。。。。
78 IN-MEMORY
71 rows selected.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值