Data Guard
结构
Data Guard
是一个集合,由一个
Primary
数据库(生产数据库)及一个或多个
Standby 数据库组成。
Data Guard
的各数据库之间通过
Oracle 的网络服务名进行连接,并且有可能分布于不同地,实际上只要组成
Data Guard 的各数据库之间能够相互通信,它们的物理位置并没有什么限制。
Data Guard的搭建过程:
配置参数,配置主备库间网络环境,复制物理备库(逻辑备库由物理转)broker,配置快速的链接式故障转移。
主库、备库:
Primary
数据库
|
Primary
数据库实际上就是产生修改操作、并且负责将修改操作传输到其它服务器上的数据库,它也被称为主数据库,相同 Data Guard
环境中至少要包含一个并且仅能有一个
Primary
数据库, Primary
数据库既可以是单实例结构,也可以是
RAC
结构。
|
Standby
数据库
|
Primary
数据库实际上就是产生修改操作、并且负责将修改操作传输到其它服务器上的数据库,它也被称为主数据库,相同 Data Guard
环境中至少要包含一个并且仅能有一个
Primary
数据库, Primary
数据库既可以是单实例结构,也可以是
RAC
结构。
|
三种保护模式:
Maximum Protection
(最大保护)
|
这种模式能够确保数据绝无丢失。它要求所有的事务在提交前其 REDO
不仅被写入到本地的
Online Redologs,
还要同时写入到
Standby数据库的 Standby Redologs,
并确保
REDO
数据至少在一个
Standby
数据库中可用,之后才会在 Primary
数据库提交该事务。如果出现因比如网络等的故障而导致的
Standby 数据库不可用时,Primary
数据库会被关闭。
|
Maximum Performance
(最高性能)
|
这种模式在不影响
Primary
数据库性能前提下,提供最高级别的数据保护策略。事务可以随时提交,当前 Primary
数据库的
REDO
数据至少需要写入一个 Standby
数库,不过这种写入可以是不同步的。如果网络条件理想的话,这种模式能够提供类似最高可用性的数据保护,而仅对Primary 数据库的性能有轻微影响。最高性能是创建
Standby
数据库时,系统的默认保护模式。
|
Maximum Availability
(最大可用)
|
这种模式在不影响
Primary
数据库可用前提下,提供最高级别的数据保护策略。其实现方式与最大保护模式类似,也是要求本地事务在提交 前必须至少写入一个 Standby
据库的
Standby Redologs
中,不过与最大保护模式不同的是,如果出现故障导致 Standby
数据库无法访问时,
Primary
数据库并不会被关闭,而是自动转为最高性能模式,在等待 Standby
数据库恢复正常时,
Primary
数据库又会自动转换成最高可用性模式。
|