从Oracle9i开始支持逻辑Standby,通过logminer从日志中挖掘出sql语句重新在备库应用,来达到主备库数据冗余的目的。由于逻辑备库在应用sql的同时是处于open状态了,那么除了可以利用其冗余数据的特性来做冗灾之外,考虑得更多的可能是利用其做为报表查询库,或者做为读写分离的一种解决方案来分担整个系统的负载,可以充分利用做为备库的主机和存储资源。但是9i的逻辑备库有很多不成熟的地方,实际使用的案例也不多。Oracle10g对于Data Guard在易用性和稳定性方面做出了不少的改进。本系列文章打算简单介绍一下10gR2的逻辑备库。

逻辑备库的架构说起来十分的简单,首先利用主库的一个备份来建立逻辑备库,然后主库将日志传递到备库,备库利用logminer从主库的日志中解析出主库所执行过的SQL,然后重新跑一边,从而使得主备库的数据一致。由于Oracle的联机日志是半逻辑半物理结构,所以从日志中解析出来的SQL,只是逻辑上和主库上的等效,而不是完全相同的语句。比如主库执行一条insert语句插入了10条记录,在备库解析出来将是10条insert语句,每条语句插入一条记录。

从上面的描述,我们可以发现逻辑备库和downstream方式的Streams非常的相似,不同的是,Streams可以更灵活,可以方便的过滤数据,也可以在第三方库执行日志解析的工作。但是逻辑备库的实现和维护比起Streams来都要方便很多,因为捕获和应用都是在同一个库中,就不需要使用到AQ(高级队列),从而使得整个数据流变得简单,在高负荷的系统中,越简单的产品越实用。

逻辑备库需要一系列的进程来完成日志的捕获和应用工作。

执行捕获任务的进程主要有:

READER进程从主库传过来的归档或者standby redo logfile中解析重做记录(redo record)

PREPARER进程负责将READER进程解析到的重做记录转换为LCR(Logical change record)。可以开启多个PREPARER进程。解析出来的LCR存放在shared pool的一个叫做LCR cache的区域中。

BUILDER进程将LCR打包成事务。另外还负责管理LCR cache, 执行重启SQL Apply所需要的checkpoint(这个在后面的文章中会介绍),以及过滤不需要数据等任务。

执行应用日志的进程主要有:

ANALYZER进程检查一组LCR中包含的事务片段,过滤掉不需要应用的事务,检查不同事务的依赖关系等

COORDINATOR进程分配事务给APPLIER进程,监控事务依赖关系和协调调度,确认逻辑备库的提交

APPLIER进程将LCR应用到备库,和COORDINATOR进程交互确认事务的依赖关系并提及事务。

上面提到的这些进程,都可以从V$LOGSTDBY_PROCESS视图中获得他们的信息

SYS@standby>select sid,type,status_code,status from v$logstdby_process;

SID TYPE         STATUS_CODE STATUS

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

143 COORDINATOR        16116 ORA-16116: no work available

141 READER             16240 ORA-16240: Waiting for logfile (thread# 1, sequence# 54)

140 BUILDER            16116 ORA-16116: no work available

139 PREPARER           16116 ORA-16116: no work available

137 ANALYZER           16116 ORA-16116: no work available

136 APPLIER            16116 ORA-16116: no work available

135 APPLIER            16116 ORA-16116: no work available

134 APPLIER            16116 ORA-16116: no work available

133 APPLIER            16116 ORA-16116: no work available

132 APPLIER            16116 ORA-16116: no work available

10 rows selected.

呵呵,我的试验库太闲了,除了READER进程在等待主库传日志外,其他的都没事干啦^_^

通过v$logstdby_stats视图可以查看逻辑备库的一些统计信息

SYS@standby>select * from v$logstdby_stats;

NAME                                               VALUE

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

number of preparers                                1

number of appliers                                 5

maximum SGA for LCR cache                          30

parallel servers in use                            9

maximum events recorded                            100

preserve commit order                              TRUE

transaction consistency                            FULL

record skip errors                                 Y

record skip DDL                                    Y

record applied DDL                                 N

record unsupported operations                      N

coordinator state                                  IDLE

transactions ready                                 8

transactions applied                               8

coordinator uptime                                 410

realtime logmining                                 N

apply delay                                        0

Log Miner session ID                               1

txns delivered to client                           1649

DML txns delivered                                 316

DDL txns delivered                                 7

CTAS txns delivered                                1

Recursive txns delivered                           1326

Rolled back txns seen                              1

LCRs delivered to client                           5762

bytes of redo processed                            8944996

bytes paged out                                    0

seconds spent in pageout                           0

bytes checkpointed                                 0

seconds spent in checkpoint                        0

bytes rolled back                                  0

seconds spent in rollback                          0

seconds system is idle                             334

33 rows selected.

oracle logical standby,Oracle10gR2 Logical Standby(一)概念与原理相关推荐

  1. oracle 分组排序后取第一条_关于oracle中位图索引的探讨:概念、原理、优缺点...

    概述 oracle索引主要分为以下几种: 1. b-tree索引 Oracle数据库中最常见的索引类型是b-tree索引,也就是B-树索引,以其同名的计算科学结构命名.CREATE INDEX语句时, ...

  2. oracle dg3种模式,DG有下面三种模式  逻辑standby和物理standby

    DG有下面三种模式 – Maximum protection – Maximum availability – Maximum performance 在Maximum protection下, 可以 ...

  3. Steps to configure Oracle 11g Data Guard Physical Standby – Active Data Guard Part-I

    2019独角兽企业重金招聘Python工程师标准>>> Steps to configure Oracle 11g Data Guard Physical Standby – Act ...

  4. oracle standby同步,PRIMARY Standby不能同步问题

    问题1:ORA-19527: physical standby redo log must be renamed PRIMARY: Error 12514 received logging on to ...

  5. Oracle Data Guard搭建——Physical Standby Database

    文章说明 第一次完成了基础的物理备库搭建,便于后续回顾故写下该文章,有关DG的认知还很浅显,文章中不乏有许多的问题,若有错误或配置不完善的地方请大家指出,希望该文章能在大家搭建dg的过程中起到帮助. ...

  6. Oracle DG 之--DG Broker 配置基本概念

    Oracle DG 之DG Broker 配置 系统环境: 操作系统: RedHat EL55_64 Oracle:    Oracle 11.2.0.3.0 Data Guard 配置: 主库bjd ...

  7. oracle元数据存储在表空间,oracle db中数据和元数据的概念

    本帖最后由 warehouse 于 2014-8-10 11:58 编辑 02年研究dw相关的产品和业务时第一次听说了元数据的概念,很多资料上是这样描述元数据的概念的:元数据是定义或者描述数据的数据. ...

  8. 达梦mpp相当于oracle什么,DM7 达梦数据库 大规模并行处理 MPP (1) -- 基本概念和原理...

    1 概述 达梦大规模并行处理 MPP(DM Massively Parallel Processing,缩写 DM MPP)是基于达梦数据库管理系统研发的完全对等无共享式集群组件,支持将多个 DM 数 ...

  9. pod概述:概念、原理解读

    Pod概述:概念.原理深度解读 1.1  带你梳理Pod概念.原理 什么是Pod? Pod是Kubernetes中的最小调度单元,一个Pod封装一个容器(也可以封装多个容器),Pod里的容器共享存储. ...

最新文章

  1. Registry仓库Harbor的部署与简介
  2. 解决SecureCRT中文乱码
  3. hive编程指南电子版_第三篇|Spark SQL编程指南
  4. 1035 插入与归并 (25 分)(c++)
  5. 转载: Web 研发模式演变
  6. 电气控制原理动图22张,超赞!
  7. element ui封装 tree下拉框
  8. python textwrap_[Python标准库]textwrap——格式化文本段落
  9. 修改自己的centos输入法
  10. 深入浅出VC++串口编程--基于Win32 API
  11. 线性条件随机场代码解读
  12. 总结:Linux磁盘分区管理
  13. python---之[::-1]
  14. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——AlbumView相册控件的使用方式...
  15. DevOps团队如何选择监控工具
  16. 耳机电声测试仪软件,杭州爱华 AWA6128D双耳机测试仪
  17. 后端Web开发框架(Java)
  18. 数据库设计--企业人事管理系统(有关数据库的课程设计)
  19. 全球酷站中心 html5网站,除了Behance,还有哪些优质设计资源站
  20. Cadence基本操作之——SOIC封装

热门文章

  1. 图片放大不失真软件 S-Spline V2
  2. 英特尔中国祝贺高亭宇夺冠:至强CPU提供更精准训练支持
  3. 钱大妈关闭所有北京门店:低估了北京市场的难度
  4. Keep将赴港上市?回应:不予置评
  5. 苹果,把充电器还给我们!京沪法学生状告苹果公司欺诈
  6. 京东宣布全员涨薪两个月! 打工人流下了羡慕的泪水
  7. 车顶维权女子被行拘五日!“特斯拉不可能妥协”,高管硬气回应却被狂批......
  8. “您都对”、“客户都对”也能申请为商标?
  9. 何小鹏谈“小米造车”:我们要为勇敢者鼓掌
  10. 亚马逊云计算业务上半年营收210亿美元