设为首页 加入收藏

TOP

逻辑DataGuard的配置(四)
2014-11-24 03:33:57 来源: 作者: 【 】 浏览:16
Tags:逻辑 DataGuard 配置

Database mounted.
ORCLSTD_LG > alterd database open;
SP2-0734: unknown command beginning "alterd dat..." - rest of line ignored.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open


ORCLSTD_LG > alter database open resetlogs;

Database altered.
开始应用REDO数据
ORCLSTD_LG >alter database start logical standby apply;

Database altered.

ORCLSTD_LG >alter database stop logical standby apply;

Database altered.

ORCLSTD_LG >select * from v$logfile;

GROUP# STATUS TYPE
---------- ------- -------
MEMBER
--------------------------------------------------------------------------------
IS_
---
3 ONLINE
/u01/app/oracle/oradata/orclstd/redo03.log
NO

2 ONLINE
/u01/app/oracle/oradata/orclstd/redo02.log
NO

GROUP# STATUS TYPE
---------- ------- -------
MEMBER
--------------------------------------------------------------------------------
IS_
---

1 ONLINE
/u01/app/oracle/oradata/orclstd/redo01.log
NO


ORCLSTD_LG >alter database add standby logfile group 4 '/u01/app/oracle/oradata/orclstd/stdredo01.log' size 50m;

Database altered.

ORCLSTD_LG >alter database add standby logfile group 5 '/u01/app/oracle/oradata/orclstd/stdredo02.log' size 50m;

Database altered.

ORCLSTD_LG >alter database add standby logfile group 6 '/u01/app/oracle/oradata/orclstd/stdredo03.log' size 50m;

Database altered.
重新执行:
ORCLSTD_LG >alter database start logical standby apply immediate;

Database altered.

测试:

Primary:

SQL> select * from scott.test;

no rows selected

SQL> insert into scott.test values(1);

1 row created.

SQL> insert into scott.test values(2);

1 row created.

SQL> insert into scott.test values(3);

1 row created.

SQL> commit;

Commit complete.

Standby:

SQL> select * from scott.test;

ID
----------
1
2
3

逻辑Standby创建(转换)成功……

总结:

一、Physical Standby,Logical Standby (物理Standby及逻辑Standby)

Physical standby直接从主库接受archived log,然后直接做基于block的物理恢复(更新或调整变化的block),所以physical standby在物理文件一级完全都等同于主库。physical standby恢复只是底层的block apply, OS层面的工作,数据库SCHEMA,包括索引都是一样的。它是直接应用REDO或归档实现同步的 。不会涉及temp ,undo等。物理STANDBY可能的模式:只读模式(OPEN READONLY)和恢复模式(MANANGED RECOVERY)。

在逻辑STANDBY中,逻辑信息是相同的,但物理组织和数据结构可以不同,它和主库保持同步的方法是将接收的REDO转换成SQL语句,然后在STANDBY上执行SQL语句(SQL Apply)。逻辑STANDBY除灾难恢复外还有其它用途,比如用于用户进行查询和报表

在9i R2之前,data guard的服务器只能运行在read only或者recover模式, 一个physical standby database在物理上完全等同主库,当physical standby database正在做恢复的时候,不能打开用作其他用途。 而logical standby database只是在logical上等同需要恢复的schema, 所以在恢复的时候,可以同时打开做report(做查询动作),也可以用户和主库不一样的 数据对象等等,极大了提高了备用库的利用率。

二、Dataguard

都是Standby。在Oracle 9i之前称为Standby,9i或之后的Standby被改名为Data guard。不过功能上也有了很多的改进和区别 。

三、Standby下LGWR / ARCH传输

查看数据库保护模式:

SQL> select DATABASE_ROLE,PROTECTION_MODE,PROTECTION_LEVEL from v$database;

1.最大性能(maximize performance):这是data guard默认的保护模式。primay上的事务commit前不需要从standby上收到反馈信息(主数据库的提交操作不等待STANDBY),该模式在primary故障时可能丢失数据,但standby对primary的性能影响最小。 可以使用LGWR ASYNC或者ARCH两种传输模式。

ARCH传输模式:Primary DB上的online redo log写满或其他条件引起redo log写归档的时候,redo log生成的archived log file写到本地归档目录的同时,写入了Standby归档目录。只是Primary db上的online redo log切换不必等Standby上的写归档动作结束。

2.最大可用(maximize availability):在正常情况下,最大可用模式和最大保护模式一样;在standby不可用时,最大可用模式会自动降低成最大性能模式,所以standby故障不会导致primay不可用。在问题纠正之后,Standby和主数据库进行再同步,至少有一个standby可用的情况下,即使primary down机,也能保证不丢失数据

首页 上一页 1 2 3 4 下一页 尾页 4/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇描述逻辑(DL)基础知识 下一篇达梦(8)逻辑备份恢复测试

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Java 学习线路图是怎 (2025-12-25 15:19:15)
·关于 Java 学习,有 (2025-12-25 15:19:12)
·有没有Java swing教 (2025-12-25 15:19:09)
·Start, Stop, and Di (2025-12-25 14:50:57)
·C语言入门教程:零基 (2025-12-25 14:50:54)