Oracle ADG相关介绍

news2024/10/2 20:26:40

文章目录

  • 一、ADG原理
    • 1、ADG介绍
    • 2、ADG搭建流程
  • 二、ADG相关参数
  • 三、增量修复

在这里插入图片描述

一、ADG原理

1、ADG介绍

Oracle ADG(Advanced Data Guard)是Oracle数据库的一项高可用和灾难恢复技术,它通过将数据保持在物理备库中来提供数据保护和容灾能力。

ADG是建立在Oracle Data Guard技术之上的,它使用物理备库作为数据的保护副本。当主库发生故障时,ADG可以自动地将备库切换为可读写模式,从而保证系统的连续性。并且,ADG还可以通过实时传输日志(Redo Log)来将备库与主库同步,以增加数据的可用性和一致性。

ADG的原理如下:

  1. 建立主备库:首先,需要配置一个主库和一个备库。主库是用来处理用户请求的数据库,而备库是主库的一个副本。

  2. 启动日志传输:主库会将产生的Redo Log交给Data Guard Broker,然后Data Guard Broker会将这些日志传输给备库。这样,备库就能够实时地同步主库的数据变化。

  3. 数据保护模式:备库可以处于不同的保护模式中,包括最大性能模式、最大可用性模式和最大保护模式。不同的模式可以提供不同的数据保护级别和容灾能力。

  4. 故障切换:当主库发生故障或计划维护时,ADG可以自动地将备库切换为可读写模式,从而保证系统的连续性。一旦主库恢复正常,ADG还可以自动地将备库切换回只读模式。

  5. 监测和管理:ADG通过Data Guard Broker来监测和管理主备库的状态。Data Guard Broker是一个集中管理工具,可以实时地监控主备库的同步状态、处理故障切换以及进行备库的维护和管理。

Oracle ADG是一种基于Oracle Data Guard的高可用和灾难恢复技术,它通过实时传输日志将主库和备库保持同步,并提供自动故障切换和集中管理功能,以提供数据保护和容灾能力。

2、ADG搭建流程

ADG(Advanced Data Guard)是Oracle数据库的一个功能,用于实时数据复制和灾难恢复。下面是ADG搭建的详细流程:

  1. 确认环境要求:首先,要确保主库和备库的硬件和操作系统满足Oracle ADG的最低要求。此外,还需要确认数据库版本和Patch级别一致。

  2. 确认网络连接:主库和备库之间需要建立可靠的网络连接。确保网络连接的稳定性和带宽满足数据复制的需求。可以使用私有网络或专用链路来确保数据传输的可靠性和安全性。

  3. 配置主库和备库的参数:在主库中,需要启用redo log文件归档和归档传输功能。在备库中,需要启用redo apply功能。相关参数包括LOG_ARCHIVE_CONFIG、DB_RECOVERY_FILE_DEST和FAL_SERVER等。

  4. 创建主库的备份:在主库上进行全备份,并将备份文件传输到备库。可以使用Oracle RMAN工具进行备份,然后通过网络传输备份文件到备库。

  5. 在备库上恢复数据库:在备库上使用Oracle RMAN工具,将主库的备份文件恢复到备库上。这将建立备库的初始数据。

  6. 配置数据保护模式:在主库和备库上配置数据保护模式。常用的模式包括最大性能模式(Maximum Performance)、最大可用性模式(Maximum Availability)和最大保护模式(Maximum Protection)。根据需求选择适合的模式。

  7. 启动数据传输:在主库上启动数据传输,将主库的归档日志传输到备库上。可以使用Oracle Data Guard Broker进行配置和管理。

  8. 启动备库的应用进程:在备库上启动MRP(Managed Recovery Process)进程,开始将归档日志应用到备库上。

  9. 验证复制的正确性:在主库上进行一些数据操作,确保数据可以正确地同步到备库。可以使用SQL语句和Oracle Data Guard Broker进行验证。

  10. 配置ADG增量修复:在ADG环境中,可以启用ADG增量修复功能,用于在备库上修复主库上的物理块损坏或数据丢失。

ADG搭建的流程包括准备环境、配置参数、创建备份、恢复数据库、配置数据保护模式、启动数据传输和验证复制的正确性。通过正确的配置和管理,可以建立可靠的主备关系,并提供实时数据复制和灾难恢复的能力。

二、ADG相关参数

在Oracle数据库中,有一些与Oracle ADG(Advanced Data Guard)相关的参数可以用来配置和管理ADG功能。以下是一些常用的ADG参数的详细介绍:

  1. LOG_ARCHIVE_DEST_n:这个参数用于指定归档日志的目标位置。在ADG中,通常需要将归档日志传输给备库以保持数据同步。可以通过设置LOG_ARCHIVE_DEST_n参数来指定备库的位置。其中,n表示一个整数,可以使用多个LOG_ARCHIVE_DEST_n参数指定多个备库。

  2. LOG_ARCHIVE_CONFIG:这个参数用于指定归档日志的配置。可以通过设置这个参数来指定在哪个归档目标上将日志发送给备库,以及应用归档日志的验证选项。通过配置LOG_ARCHIVE_CONFIG参数,可以灵活地控制归档日志的传输和应用。

  3. LOG_ARCHIVE_MAX_PROCESSES:这个参数用于指定归档日志传输的最大并行进程数。可以通过设置这个参数来增加归档日志传输的并行度,从而提高数据同步的速度。建议将LOG_ARCHIVE_MAX_PROCESSES设置为与实际系统的处理能力相匹配的适当值。

  4. LOG_ARCHIVE_FORMAT:这个参数用于指定归档日志的命名格式。可以通过设置这个参数来定义归档日志的文件名规则。其中,%t表示日志序列号,%s表示日志序列号的后缀,%r表示数据库的线程号。

  5. DB_UNIQUE_NAME:这个参数用于指定数据库的唯一名称。在ADG中,可以通过设置这个参数来区分不同的主备库。主库和备库必须有不同的DB_UNIQUE_NAME。这样,ADG才能正确地识别数据库的角色和状态。

  6. FAST_START_FAILOVER_TARGET:这个参数用于指定ADG故障切换的目标时间。可以通过设置这个参数来控制当主库发生故障时,ADG自动切换为备库的时间。建议将FAST_START_FAILOVER_TARGET设置为一个合理的值,以满足业务的需求。

通过合理地配置和管理这些参数,可以实现高可用和灾难恢复的目标。需要注意的是,参数的具体配置和使用可能会根据实际的环境和需求而有所不同。建议在使用这些参数时参考官方文档或咨询Oracle的支持人员。

三、增量修复

ADG(Advanced Data Guard)是Oracle数据库的一个功能,用于实时数据复制和灾难恢复。ADG增量修复是ADG的一个重要特性,用于在备库上修复主库上发生的物理块损坏或数据丢失。

ADG增量修复的原理是,在主库上发生数据损坏或丢失时,备库会自动从主库获取相应的增量日志,并应用到备库上进行修复。这样可以保证主库和备库之间的数据一致性,并且减少了数据修复的时间。

ADG增量修复的流程如下:

  1. 检测主库上的物理块损坏或数据丢失。Oracle数据库会使用校验和和数据自愈机制来检测数据的完整性。

  2. 当发现物理块损坏或数据丢失时,主库会生成一个增量日志,记录被损坏或丢失的物理块的修改操作。

  3. 备库会通过网络传输获取增量日志。Oracle数据库会使用Redo Transport Services来传输增量日志。

  4. 备库将增量日志应用到备库上,进行逐块修复。Oracle数据库会使用数据库恢复流程来应用增量日志,并将被修复的物理块恢复到与主库一致的状态。

  5. 当修复完成后,备库将与主库保持一致,并可用于故障切换或灾难恢复。

ADG增量修复的好处是可以实现实时的数据修复和恢复,减少了故障恢复的时间窗口。同时,由于是增量修复,只需要传输和应用增量日志,减少了网络带宽的使用和数据库的负载。

需要注意的是,ADG增量修复需要在ADG环境中正确配置和启用。还需要保证主库和备库之间的网络连接和传输是稳定和可靠的。此外,增量日志的传输和应用速度也会受到网络带宽和数据库负载的影响,需要根据实际情况进行调整和优化。

ADG增量修复是Oracle ADG的一个重要特性,用于实时数据修复和灾难恢复。通过自动获取增量日志,并将其应用到备库上,可以保证主库和备库之间的数据一致性,并提供故障切换和灾难恢复的能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1471870.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FariyGUI × Cocos Creator 3.x 弹窗制作

在fgui里制作一个弹窗 新建一个按钮,作为返回按钮 新建一个标签 做成这个样子 其中包含两个节点,名称分别为title和closeButton 可以阅读fgui的源码window.js得到,closeButton按钮只需要输入名称即可在contentPane设置时自动绑定。 且会…

Wagtail安装运行并结合内网穿透实现公网访问本地网站界面

文章目录 前言1. 安装并运行Wagtail1.1 创建并激活虚拟环境 2. 安装cpolar内网穿透工具3. 实现Wagtail公网访问4. 固定的Wagtail公网地址 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通俗易懂,风趣幽默&#xf…

nginx高级配置详解

目录 一、网页的状态页 1、状态页的基本配置 2、搭配验证模块使用 3、结合白名单使用 二、nginx 第三方模块 1、echo模块 1.1 编译安装echo模块 1.2 配置echo模块 三、nginx变量 1、内置变量 2、自定义变量 四、自定义图标 五、自定义访问日志 1、自定义日志格式…

Java根据excel模版导出Excel(easyexcel、poi)——含项目测试例子拿来即用

Java根据excel模版导出Excel(easyexcel、poi)——含项目测试例子拿来即用 1. 前言1.1 关于Excel的一般导出2.2 关于easyexcel的根据模版导出 2. 先看效果2.1 模版2.2 效果 3. 代码实现(核心代码)3.1 项目代码结构3.2 静态填充例子…

数学建模【GM(1, 1)灰色预测】

一、GM(1, 1)灰色预测简介 乍一看,这个名字好奇怪,其实是有含义的 G:Grey(灰色)M:Model(模型)(1, 1):只含有一个变量的一阶微分方程模型 提到灰色,就得先说…

【已解决】解决Win11忘记开机密码(不用重装系统)

问题起因 因为在实验室的电脑从过年就没有用过,也不知道为什么记性这么差,就把电脑密码忘了,但是又不想用系统盘重装电脑。于是从网上整理一些文章,最后写了下面一篇解决方法 解决方法 1.首先在登录界面(输入密码那…

深入探索 JS 的提升机制、函数与块作用域以及函数表达式和声明(下)

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

合并3D线条模型怎样进行调整长度---模大狮模型网

在3D建模软件中合并3D线条模型后,要调整线条的长度可以通过以下步骤进行: 选择线条模型:首先,在3D建模软件中选择您要调整长度的线条模型。这通常涉及使用选择工具或者鼠标点击线条模型来进行选择。 使用拉伸工具:大多…

采访影视行业艺术指导“Sora入局,或将改变游戏规则?”

自OpenAI发布Sora已经过去了半个月,人们对于这个新兴的“文生视频”(text-to-video)大模型工具都已经有了初步的认识,经过半个月的沉淀,他们也陆续发布了一些更加令人震惊的demo,话不多说,我们先…

大厂性能测试监控指标及分析调优指南

一、哪些因素会成为系统的瓶颈 CPU:如果存在大量的计算,他们会长时间不间断的占用CPU资源,导致其他资源无法争夺到CPU而响应缓慢,从而带来系统性能问题,例如频繁的FullGC,以及多线程造成的上下文频繁的切换…

Jqgrid入门

最近要用Jqgrid做项目,之前都没怎么接触过,看了看官网有一个小demo,于是下下来后,发现这个demo有点问题,度娘了一下,发现有的博主直接贴官网的代码,截了个图,我真是***,还…

【Java程序设计】【C00313】基于Springboot的物业管理系统(有论文)

基于Springboot的物业管理系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的物业管理系统,本系统有管理员、物业、业主以及维修员四种角色权限; 管理员进入主页面,主要功能包…

protobuf简单使用(二)

介绍 上一节中,我们介绍了protobuf,简单来说,它是一种消息数据格式,其作用类似于json,但是比json的使用效率要高。 除此以外,我们介绍了protobuf的简单使用,也就是如何可以像使用json一样&…

matplotlib plt.show()却弹出空白框并之后自动退出程序的原因及解决方法

运行下列代码并使用plt.show()进行展示时候,cmd输出如下: 先弹出空白框: 而后直接退出程序: 之前遇到过很多次,由于不输出Traceback,完全不知道什么原因。结果发现是因为没有导入torch导致的。 解决办法就…

电商平台商品详情api数据一键采集

批量采集电商平台商品详情API数据的步骤如下: 1. 了解目标电商平台:首先,你需要了解目标电商平台的API文档和规则。不同的电商平台可能有不同的API接口和限制,需要熟悉这些信息。 2. 获取API访问权限:在采集数据之前…

【C++】类与对象——友元,内部类,匿名对象

类与对象 1 友元1.1 概念:1.2 友元函数1.3 友元类 2 内部类概念:特性:举例: 3 匿名对象Thanks♪(・ω・)ノ谢谢阅读!!!下一篇文章见!!&am…

基于Java的艺培管理解决方案

✍✍计算机毕业编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java、…

Canvas动画之豌豆射手

🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 往期热门专栏回顾 专栏…

多线程基础说明【基础篇】

目录 🌭1.相关概念 🍿2.创建和启动线程 🥞3.线程安全 🧈4.死锁 🥓5.线程通信的方法 1.相关概念 1.1程序 为完成特定任务,用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象…

Flask基础学习3

参考视频:41-【实战】答案列表的渲染_哔哩哔哩_bilibili flask 实现发送短信功能 pip install flask-mail # 安装依赖 我这里用登录的网易邮箱获取的授权码(登录QQ邮箱的授权码总是断开收不到邮件), # config # config mail MAI…