探索ORACLE之11g DataGuard_01概念
作者:吴伟龙
1、什么是DataGuard
DataGuard是oracle推出的一项专门针对oracle数据库的高可用技术,在8i之前被称之为Standby Dtabase,从9i开始正式更名为DataGuard。通常情况下至少会有两个数据镜像节点构成的主备关系。通过redo日志的同步技术来保证数据的实时同步,可以实现数据库的主备快速切换实现数据的容灾。
2、为什么要用DataGuard
DataGuard 中文名又叫数据卫士,顾名思义,是为了保证数据安全ORACLE推出的一项技术,主要用于对数据安全性重视程度比较高的一些场合,比如:银行,电信等行业他们都在应用了非常多套的DataGuard数据卫士来保障数据的安全。
当然同时也用于数据库日常维护而不中断业务,比如例行停机,测试改变,升级维护等等。
3、DataGuard所带来的价值
可以实现数据的零丢失,维护的零停机,保证业务的持续在线运行,通过读写分离有效的分担数据库压力,降低由于各种原因宕机的风险。
4、DataGuard的体系架构
5、DataGuard 是否安全
DataGuard的同步是通过redo传输并且在standby端应用实现数据的同步,那么它的同步链路是建立在Oracle Net之上,通过Oracle Net来进修数据的传输,其之间走的是SSL协议,SSL使用RSA公钥密码和对称密钥加密,提供身份验证、加密和数据完整性。SSL是自动用于重做运输验证在两个Oracle数据库。如果SSL身份验证需求没有得到满足,每个数据库必须使用远程登录密码文件。在一个DataGuard配置,所有物理和快照备用数据库必须使用密码文件的一个副本从主数据库,刷新副本须当SYSOPER或SYSDBA特权授予或撤销后,任何用户的密码与这些特权是改变
当一个密码文件是用于redo传输验证,密码文件中的的用户帐户用于redo传输各数据库之间的比较 启动一个redo传输会话和目标数据库。密码必须是同样在两个数据库中。默认情况下,系统用户的密码是用于验证重做运输 会话密码文件时使用。
6、DataGuard的三种保护模式
最大保护模式:
1)这种模式提供了最高级别的数据保护能力;
2)要求至少一个物理备库收到重做日志后,主库的事务才能够提交;
3)主库找不到合适的备库写入时,主库会自动关闭,防止未受保护的数据出现;
4)优点:该模式可以保证备库没有数据丢失;
5)缺点:主库的自动关闭会影响到主库的可用性,同时需要备库恢复后才能提交,对网络等客观条件要求非常的高,主库的性能会因此受到非常大的冲击。
最大可用性模式:
1)该模式提供了仅次于“最大保护模式”的数据保护能力;
2)要求至少一个物理备库收到重做日志后,主库的事务才能够提交;
3)主库找不到合适的备库写入时,主库不会关闭,而是临时降低到“最大性能模式”模式,直到问题得到处理;
4)优点:该模式可以在没有问题出现的情况下,保证备库没有数据丢失,是一种折中的方法;
5)缺点:在正常运行的过程中缺点是主库的性能受到诸多因素的影响。
最大性能模式:
1)该模式是默认模式,可以保证主数据库的最高可用性;
2)保证主库运行过程中不受备库的影响,主库事务正常提交,不因备库的任何问题影响到主库的运行;
4)优点:避免了备库对主数据库的性能和可用性影响;
5)缺点:如果与主库提交的事务相关的恢复数据没有发送到备库,这些事务数据将被丢失,不能保证数据无损失;