资源描述
Oracle Active DataGuard
数据同时复制技术方案
一、 概述
Oracle Active Data Guard是Oracle 11g版本推出新功效。该功效能够实现Oracle数据库读写分离。Active Data Guard从底层技术上实现了在日志恢复数据同时能够用只读方法打开数据库,用户能够在备用数据库上进行查询、报表等操作,这类似逻辑Data Guard备用数据库功效(查询功效方面),数据同时效率更高、对硬件资源要求更低。能够更大程度地发挥物理备用数据库硬件资源效能。
Active Data Guard用于维护 Oracle 数据库单独、同时物理副本,从而实现 HA/DR。Active Data Guard支持高可用性(经过零数据丢失和/或自动故障切换)和灾难恢复。而且数据同时效率更高、对硬件资源要求更低。是一个有效可行处理方案。
伴随Oracle ADG出现,Oracle在读写分离支持上又得到深入提升,能够在延迟极少情况下提供读,而且不会出现复制错误或数据不一致问题。
Active Dataguard Reader Farm架构最少存在以下优势:
1. 管理维护简单,DBA只要熟悉Dataguard管理即可,无需再额外学习其它方面新知识;
2. Active Dataguard Reader Farm节点是灵活可扩展,能够在线添加或删除节点,而且能够线性扩展而不对生产系统造成影响;
3. 能够真正做到实时查询,不会应为大事务造成同时阻塞,性能有保障;
4. 没有数据类型限制;
5. 高可用性,节点宕机全部不会影响到数据库可用性。
二、 Active Data Guard基础原理
Oracle Active Data Guard 系统架构以下:
Active Data Guard 同时是经过standby数据库对主数据库文件不停copy,不停应用主库传输过来redo重做日志来保持和主库物理结构一致。standby数据库分为物理standby和逻辑standby。主备库之间走是SSL协议,SSL使用RSA公钥密码和对称密钥加密,提供身份验证、加密和数据完整性。 Active Data Guard从底层技术上实现了在日志恢复数据同时能够用只读方法打开数据库,用户能够在备用数据库上进行查询、报表等操作。
Oracle Active Data Guard 包含一个生产数据库,也称为主数据库,和一个或多个备用数据库,这些备用数据库是和主数据库在事务上一致副本。Data Guard 利用重做数据保持这种事务一致性。当主数据库中发生事务时,则生成重做数据并将其写入当地重做日志文件中。经过 Oracle Active Data Guard,还将重做数据传输到备用站点上,并应用到备用数据库中,从而使备用数据库和主数据库保持同时。Oracle Active Data Guard 许可管理员选择将重做数据同时还是异步地发送到备用站点上。
备用数据库底层技术是 Oracle Active Data Guard 重做应用(物理备用数据库)。物理备用数据库在磁盘上拥有和主数据库逐块相同数据库结构,而且使用 Oracle 介质恢复进行更新。
三、 Active Data Guard软硬件需求
1. 硬件及操作系统需求
系统平台
硬件配置
操作系统
存放异构
primary 数据库
VS
standby 数据库
同一个Data Gurid 配置中全部oracle 数据库必需运行于相同平台。比如inter 架构下32 位linux 系统能够和inter 架构下32 位linux 系统组成一组Data Guard。64 位HP-UX 也能够和32 位HP-UX 组成一组Data Guard
不一样服务器硬件配置能够不一样,比如cpu ,内存,存放设备,不过必需确保standby 数据库服务器有足够磁盘空间用来接收及应用redo 数据
必需一致,不过操作系统版本能够略有差异,比如(linux as4&linux as5),primary 数据库和standby 数据库目录路径能够不一样
支持
2. 软件需求
ü Active Data Guard作为Oracle 企业版一个特征功效,标准版不支持。而且作为Oracle软件单独组件(类似Oracle Rac组件),需要单独收取费用。
ü 同一个Data Guard 配置中全部数据库初始化参数:COMPATIBLE 值必需相同。
ü Primary 数据库必需运行于归档模式,而且务必确保在primary 数据库上打开FORCE LOGGING,以避免用户经过nologging 等方法避免写redo 造成对应操作无法传输到standby 数据库。
ü Primary 和standby 数据库均可应用于单实例或RAC架构下,而且同一个data guard 配置能够混合使用逻辑standby 和物理standby。
ü Primary 和standby 数据库能够在同一台服务器,但需要注意各自数据文件存放目录,避免重写或覆盖。
ü 使用含有sysdba系统权限用户管理primary和standby 数据库。
ü 提议数据库必需采取相同存放架构。比如存放采取ASM/OMF 话,那不分primarty 或是standby也全部需要采取ASM/OMF。
ü 各服务器时间设置,时区/时间设置需一致。
四、 Active Data Guard工作模式
Oracle Active Data Guard 有MAX PERFORMANCE,MAX AVAILABILITY, MAX PROTECTION三种数据保护模式:
模式
数据丢失风险
传输
假如备用数据库未提交任何确定
最高 保护
零数据丢失 双重故障保护
同时
仅当从备用数据库收到已将事务重做硬化到磁盘确实定后,才向应用程序发送提交成功信号。
最高 可用性
零数据丢失 单重故障保护
同时
快速同时
远程同时
仅当收到备用数据库确实定后,或超出阈值期限后,才向应用程序发送提交成功信号,二者取其先
最高 性能
可能有极小数据丢失风险
异步
主数据库从不等候备用数据库确实定,而是直接向应用程序发送提交成功信号。
五、 Active Data Guard物理架构
Oracle Active Data Guard支持多个物理架构模式,Primary 和standby 数据库均可应用于单实例或RAC架构下。现在采取较多物理架构模式有以下两种:
1. 主机数据库(RAC)+备机数据库(DG单机)+同磁盘阵列:
2. 主机数据库(RAC)+备机数据库(RAC)+同磁盘阵列:
对比以上两种方案,备机布署为RAC双机方法为备机查询应用提供愈加好高可用性(比如负载均衡和应用透明切块),但同时也增加日常维护复杂程度。假如考虑能够连续稳定地向外围系统提供数据查询服务,推荐使用主备机数据库均为RAC模式。
六、 方案特点
1. 高性能、高可靠性
本方案采取当地备份和远程复制相结合,最大程度确保业务数据安全性。结合对操作系统级和数据库级性能优化,消除系统瓶颈,使硬件资源得到最大程度利用。
2. 方便灵活
在系统中,备份数据中心数据库系统能够切换到打开状态,不一样于冷容灾模式下容灾站点数据库系统在进行数据复制是不可用情况。所以,备份数据中心能够经过为其它系统提供数据共享服务。如经过备份数据中心为综合查询系统提供快速数据抽取功效,而且实现数据抽取和生产系统完全隔离,降低对生产系统影响。
3. 高效率、低负载
数据复制引擎使用基于Log复制,复制操作集中于对数据改变,所以将对源数据库系统、源操作系统和网络影响最小化。数据复制引擎效率很高,同时确保了复制数据正确性。在源数据库一端,数据复制引擎严格地遵守读一致性模式。在目标数据库一端,数据复制引擎使用 Oracle内部交易格式提交事务,在容灾端交易实施速度远远高于标准SQL语句实施速度。同时系统确保操作次序和会话上下文一致。
4. 全方面 --- 数据类型、DML和DDL复制
系统支持Oracle全部数据类型、DML和DDL复制。在复制时,系统可选择性地在用户级、对象级、命令级排除(exclude)不需要复制内容。
展开阅读全文