Oracle之ADG与DG的区别?

在上云后的Oracle数据灾备场景中,我们经常听到DBA迁移工程师讲到"在这个项目中用ADG进行数据实时备份,ADG比DG更好!"。究竟ADG作Oracle数据灾备的优势在什么地方?

一、ADG主要解决了DG时代读写不能并行的问题

DG时代的数据同步方式如采用Redo Log的物理方式,则数据库同步数据快、耗用资源低,但存在一个大问题。

Oracle 11G以前的Data Guard物理备份数据库,可以以只读的方式打开数据,但这时日志的数据同步过程就停止了。而如果日志的数据同步处于执行过程中,则数据库就不能打开。也就是日志读、写两个状态是互相排斥的。而Active Data Guard则是主要解决这个问题。

二、Oracle具有闪回数据库的功能,避免删表等误操作造成无法挽回

当主数据库打开并处于活动状态时,事务处于处理状态,生成Redo Log数据,并将其传送到备用的数据库中,正常情况下,可以做到秒级的数据同步。但如果在主用数据库上执行一个错误的命令,如drop database,则所有备用数据库中的数据也会被删除。

Oracle DG提供了易于使用的方式来避免这种用户错误。DBA可以在主数据库、备用数据库中同时使用闪回数据库功能,以快速将数据库恢复到一个较早的时间点上,从而取消这个误操作。

另外,Oracle还提供了延时执行备份数据库同步的功能,这样又是另一种方式防止误操作。

三、Oracle的DG、RAC一般是联合使用

RAC主要解决系统应用的故障,它不提供数据故障的快速、自动恢复,它还提供数据库应用的伸缩能力,提供应用级的保护。

DG只提供数据的备份、恢复能力,提供数据级的保护。

四、建议使用DG做数据实时同步,而不是第三方的磁盘copy工具

原因三点:

1、DG具有延时写入数据功能,可以避免误操作,而第三方工具没有。

2、DG传输的数据量更小,而第三方工具的所需的带宽更高。

3、实战中的坑: 有些第三方工具的磁盘同步最小单元与Oracle的最小磁盘单元不同,造成异常故障时,备份数据库无法启用,这非常吓人。

相关推荐
努力也学不会java2 天前
【设计模式】抽象工厂模式
java·设计模式·oracle·抽象工厂模式
不想被吃掉氩3 天前
MySQL的事务特性和高可用架构
数据库·oracle
FL16238631293 天前
C#winform流程图工具箱源码支持画矩形箭头圆形菱形保存为图片
数据库·oracle
正在走向自律3 天前
Java连接电科金仓数据库(KingbaseES)实战指南
java·数据库·oracle·国产数据库·kingbase
Xxtaoaooo3 天前
OpenTenBase分布式HTAP实战:从Oracle迁移到云原生数据库的完整指南
云原生·oracle·tdsql·opentenbase·腾讯云数据库
西贝爱学习4 天前
数据库系统概论的第六版与第五版的区别
数据库·oracle
我是zxb4 天前
EasyExcel:快速读写Excel的工具类
数据库·oracle·excel
_苏沐4 天前
cte功能oracle与pg执行模式对比
数据库·oracle
Blossom.1184 天前
从“能写”到“能干活”:大模型工具调用(Function-Calling)的工程化落地指南
数据库·人工智能·python·深度学习·机器学习·计算机视觉·oracle
不秃的开发媛4 天前
Java连接池详解:从Oracle到TiDB的随缘之旅
java·oracle·tidb