12c 的 Cascaded Standby 数据库
更新时间: 2016-11-01 07:51
实时 Cascading:
新版本现在支持以实时的模式将 redo 从第一个 standby 数据库传递到 cascaded standby 数据库。因此在第一个 standby 数据库,Redo 的信息会在被写到 Standby Redolog 后立即传递到 cascaded standby 数据库。
而非实时 Cascading 意味着:只有主库的 log Switch 之后,整个 log sequence 才会被传递到最终的 Standby 数据库上。
先决条件:
-
第一个(Cascading)standby 数据库必须是物理的或者是 Far Sync Standby 数据库
-
必须保证至少在 Cascading standby 数据库上使用 Standby Redolog
-
Active Data guard 的选项必须是有 license 的
-
Primary,Cascading,Cascaded standby 数据库的 db_unique_name 必须体现在所有数据库 log_archive_config 的 dg_config 中
设置:
首先 ,创建一个通常的 Dataguard 环境到 cascading standby 数据库。Log 的传输模式应该为 SYNC,同时在 cascading standby 配置 Standby Redolog。在创建完 cascaded standby 数据库以后就可以设置 cascading log 的传输服务了,下面是一些注意事项:
-
Primary,Cascading,Cascaded standby 数据库的 db_unique_name 必须体现在所有数据库 log_archive_config 的 dg_config 中。
-
在 Cascading standby 数据库的 log_archive_dest_n 里面设置 ‘valid_for=(STANDBY_LOGFILES,STANDBY_ROLE)’ 的属性来传输给 cascaded(最终)standby 数据库。
-
你可以通过设置 Log Transport 的模式来切换实时以及非实时的 cascading 模式:
ASYNC = Real-Time Cascading
SYNC = Non Real-Time Cascading
-
你只可以设置从 log_archive_dest_1 到 log_archive_dest_10 作为非实时模式的目的地,而你可以在 cascading standby 数据库上设置所有的 log_archive_dest_n 作为实时 cascading 的目的地。
-
Cascading Standby 数据库可以运行在任何保护模式下。
-
Cascading Standby 数据库可以传输给一个或者多的 terminal standby 数据库。
-
Cascading Standby 数据库的 FAL_SERVER 应该设置为 primary 库或者是其他的 primary 直接连接的 standby 数据库。
-
Terminal Standby 数据库的 FAL_SERVER应该设置 cascading Standby 数据库或者 Primary 数据库。
Far Sync Standby 数据库:
Far Sync Standby 数据库对于 Terminal standby 数据库来说是作为一个 RedoLog repository 数据库的作用。他不含有任何的数据文件。Far Sync Standby 数据库只是启动了 Log 传输服务。Far Sync Standby 数据库的优点是它可以作为 Primary 数据库的一个在最大保护模式下的本地的 ArchiveLog Repository,而 Physical 和 logical standby 数据库可以运行在远端。
Data Guard Broker 和 Cascaded Standby 数据库:
Data Guard Broker 有一个新的‘RedoRoutes’的属性可以用来构建和部署 cascaded Data Guard Broker 的配置。 以下是它的格式:
RedoRoutes = ‘(<Redo Source> : <Redo Destination>)’
Redo Source: Redo 的来源,他可以是 db_unique_name 或者是一个本地数据库名别名的 ‘LOCAL’-Keyword(不能被 Far Sync Standby 数据库使用)
Redo Destination: Redo 从这个数据库传输到的目的地。他可以是一个或者多个(用逗号分开)db_unique_name 或者是代表所有在 Data Guard Broker 配置中可能目的地的别名的‘ALL’-Keyword。 你可以设置到目的地的传输的模式。包括以下:
-
SYNC: 等同于 log_archive_dest_n 中的属性 ‘SYNC AFFIRM’ 或者是非实时 Cascade
-
ASYNC: 等同于 log_archive_dest_n 中的属性 ‘ASYNC’ 或者是 实时 Cascade
-
FASTSYNC :等同于 log_archive_dest_n 中的属性 ‘SYNC NOAFFIRM’