文档章节

oracle 11g dataguard 使用快照实现临时读写

 突突突酱
发布于 02/20 16:35
字数 747
阅读 5
收藏 0

racle 11g dataguard已经可以临时打开可读写备库,打开后可以进行更改,做压力测试等工作,完成后不用进行重新恢复备库直接可以将角色更改为standby继续应用管理日志。

理备库的初始状态是正在应用日志,我们执行下面的命令生成快照数据库,

SQLalter database convert to snapshot standby;

alter database convert to snapshot standby

*

ERROR at line 1:

ORA-38784: Cannot create restore point 'SNAPSHOT_STANDBY_REQUIRED_11/23/201210:49:53'.

ORA-01153: an incompatible media recovery is active

看到了报错信息,不过从报错信息中,我们也能看到,实际上所谓的快照数据库,Oracle是利用了闪回数据库的功能,首先他要生成一个restore point,

也就是将来闪回数据库的起点。

正确的操作是停止日志应用,然后把数据库转换成快照数据库

SQL> recover managed standby database cancel;

Media recovery complete.

SQL> alter database convert to snapshot standby;

Database altered.

SQL> select status from v$instance;

STATUS

 

MOUNTED

SQL> alter database open;

Database altered.

查看数据库状态,是以读写的方式打开的,并且数据库是快照数据库的状态

SQL> select name,open_mode,database_role,flashback_on from v$database;

NAME OPEN_MODE DATABASE_ROLE FLASHBACK_ON

---------

DB01 READ WRITE SNAPSHOT STANDBY RESTORE POINT ONLY

接下来就可以做操作了,如果有压力测试需求在这个状态下可以进行

SQL> create table d(x int,y char(3));

Table created.

SQL> insert into d values(100,'t');

1 row created.

SQL> commit;

Commit complete.

SQL> select * from t;

no rows selected

SQL> select * from d;

X Y

---

100 t

如果要改回原来的物理备库状态,要关闭数据库,在mount状态下执行命令

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

Total System Global Area 634679296 bytes

Fixed Size 2231032 bytes

Variable Size 411043080 bytes

Database Buffers 218103808 bytes

Redo Buffers 3301376 bytes

Database mounted.

SQL> alter database convert to physical standby;

Database altered.

SQL> shutdown immediate

ORA-01507: database not mounted

ORACLE instance shut down.

SQL> startup

ORACLE instance started.

Total System Global Area 634679296 bytes

Fixed Size 2231032 bytes

Variable Size 411043080 bytes

Database Buffers 218103808 bytes

Redo Buffers 3301376 bytes

Database mounted.

Database opened.

数据库状态已经是物理备库,当然刚才做的操作也看不到了,比如说D表

SQL>select name,open_mode,database_role,flashback_on from v$database;

NAME OPEN_MODE DATABASE_ROLE FLASHBACK_ON

---------

DB01 READ ONLY PHYSICAL STANDBY NO

SQL> select * from d;

select * from d

*

ERROR at line 1:

ORA-00942: table or view does not exist

开启日志应用模式

SQL> recover managed standby database disconnect;

Media recovery complete.

SQL> select name,open_mode,database_role,flashback_on from v$database;

NAME OPEN_MODE DATABASE_ROLE FLASHBACK_ON

---------

DB01 READ ONLY WITH APPLY PHYSICAL STANDBY NO

在主库上:

SQL> create table d(x number);

Table created.

SQL> insert into d values(1);

1 row created.

SQL> commit;

Commit complete.

SQL> alter system switch logfile;

System altered.

回到备库:

SQL> select * from d;

X

 

1

© 著作权归作者所有

共有 人打赏支持
粉丝 1
博文 87
码字总数 83868
作品 0
私信 提问
11g dataguard 类型、保护模式、服务

一. Dataguard中的备库分为物理备库和逻辑备库及快照备库 备库是主库的一致性拷贝,使用一个主库的备份可以创建多到30个备库,将其加入到dataguard环境中,创建成功后,dataguard通过自动应用...

技术小美
2017/11/19
0
0
Oracle Data Guard 概念篇

一个Data Guard 配置由一个生产库和一个或者多个standby数据库组成,在Data Guard配置中,主库和备库都既可以是rac环境,也可以是单机环境。 这篇文章主要介绍dataguard的一些基本知识 data...

sugar黑黑
2015/09/23
0
0
Oracle 11g physical dataguard之快照备用

在oracle 10g要准备一个读写备用的数据库还是很繁琐的,准备好dataguard后得手动创建还原点,手动停日志传送,手动激活并强制打开,测试完了,如果主备的SCN差太多,你还得做增量备份追,统计...

snowhill
2018/06/29
0
0
Oracle数据库集群容灾实施与维护2.0(RAC+DataGuard+GoldenGate)教程

Oracle数据库集群容灾实施与维护(RAC+DataGuard+GoldenGate)培训教程 套餐介绍: 风哥Oracle数据库集群容灾2.0(RAC+DataGuard+GoldenGate)实施与维护培训教程套餐)包括内容: 1、Oracl...

风哥Oracle
2018/06/28
0
0
oracle 11g 12c dg环境 SYS密码同步的问题

When password file is used for Redo Transport Authentication, the password of redo transport user should be same across primary and all its physical and snapshot standby databas......

lych528
2018/02/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Android Messenger进程间客户端向服务端传递数据

Messenger:客户端向服务端传递数据 1.Service: public class MessengerService extends Service { private Messenger messenger = new Messenger(new Handler() { public void handleMess......

Coding缘
23分钟前
2
0
Pod在多可用区worker节点上的高可用部署

一、 需求分析 当前kubernetes集群中的worker节点可以支持添加多可用区中的ECS,这种部署方式的目的是可以让一个应用的多个pod(至少两个)能够分布在不同的可用区,起码不能分布在同一个可用...

zhaowei121
42分钟前
3
0
oracle XTTS介绍

一、什么是XTTS 首先什么是XTTS。XTTS其实是从TTS来的,TTS其实也是传输数据的一种手段,传输数据的时候可能用过EXP的方式,再往后可能用数据泵导入导出一些数据,或者去做备份然后再恢复。其...

突突突酱
42分钟前
1
0
[缺陷分析]半同步下多从库复制异常

引 言 本文是由爱可生研发团队出品的「图解MySQL」系列文章,不定期更新,但篇篇精品。 爱可生开源社区持续运营维护的小目标: 每周至少推送一篇高质量技术文章 每月研发团队发布开源组件新版...

爱可生
42分钟前
2
0
二维数组序号重置

public static function unique_arr($array2D,$stkeep=false,$ndformat=true){ // 判断是否保留一级数组键 (一级数组键可以为非数字) if($stkeep) $stArr = array_keys($array2D); // 判断是......

dragon_tech
45分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部