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的最小磁盘单元不同,造成异常故障时,备份数据库无法启用,这非常吓人。

相关推荐
jnrjian11 天前
ORA-01017 查找机器名 用户名 以及library cache lock 参数含义
数据库·oracle
TTc_11 天前
oracle中的union和union all有什么区别?
数据库·oracle
山峰哥11 天前
吃透 SQL 优化:告别慢查询,解锁数据库高性能
服务器·数据库·sql·oracle·性能优化·编辑器
南 阳11 天前
Python从入门到精通day37
数据库·python·oracle
轩情吖11 天前
MySQL库的操作
android·数据库·mysql·oracle·字符集·数据库操作·编码集
脱发的老袁11 天前
【数据库】Oracle手动清理归档日志
数据库·oracle
jnrjian11 天前
Oracle 共享池 库缓存下的 Library Cache Lock
数据库·缓存·oracle
新缸中之脑12 天前
在Reddit上探索未满足的需求
数据库·oracle
light blue bird12 天前
产线多并发客户端指令操作场景组件
jvm·oracle·.net·winform
坐吃山猪12 天前
Neo4j04_数据库事务
数据库·oracle·neo4j