我是靠谱客的博主 斯文美女,这篇文章主要介绍Oracle灾备 - Data Guard,现在分享给大家,希望可以做个参考。

Oracle灾备 - Data Guard

      • 1. 什么是 DG 的 Primary Database 和 Standby Database?
      • 2. DG 的 Physical 和 Logical 备库模式下,主库与备库分别使用哪种方法进行同步的?
      • 3. 对于 DG 的 Maximum Performance, Maximum Protection, Maximum Availability 三种保护模式请给出详细的解释。
      • 4. 请说明物理备库的的完整创建过程。
      • 5. 什么是 Data Guard Broker? 请对 Data Guard Broker 的配置过程加以详细说明。
      • 6. 在进行最大性能模式与最大可用模式、最大保护模式的转换时,都分别需要配置哪些参数?
      • 7. 什么是 Snapshot Standby? 请对 Snapshot Standby 的转换过程进行解释?
      • 8. 什么是 Data Guard 的实时查询?
      • 9. 请对 Fast-Start Failover 的概念和用途给出解释,并说明它所适用的保护模式?
      • 10. 请说明配置 Fast-Start Failover 的完整过程。
      • 11. 请说明 Logical Sdandby 的完整创建过程。
      • 12 Gap
      • 13 灾备切换
      • 14 学习链接

1. 什么是 DG 的 Primary Database 和 Standby Database?

复制代码
1
2
3
4
5
6
7
8
9
10
11
Primary Database 生产数据库,产生修改操作、负责将修改操作传输到其他服务器上数据库。 相同DG环境中只能有一个,可以是单实例或者RAC结构。 [DG broker 监视器进程DMON维护主库的二进制设置文件,并且确保每次发生设置更改时,在每个备库上都保存有设置文件的最新副本。] Standby Database 在高可用环境中,用于灾难保护的生产数据库的一个独立副本。 相同DG配置中最多可以创建30个。[11g] [10-1] 通过应用Primary数据库生成的的重做记录,DG自动维护每一个Standby数据库在事务上与主库保持同步。 <所有备库都是以重做数据与主库保持同步> <物理备库、逻辑备库、快照备库>

在这里插入图片描述

2. DG 的 Physical 和 Logical 备库模式下,主库与备库分别使用哪种方法进行同步的?

复制代码
1
2
3
4
5
6
Physical [Redo Apply] 备库<mount状态, 11R2允许以只读状态打开>接受主库生成的REDO后,以介质恢复的方式实现同步。 Logical [SQL Apply] 备库<open 状态>接受主库生成的REDO后,先将其转换成SQL语句,再通过再备库上执行改SQL语句来实现同步。 <因此物理备库在物理和逻辑结构上都与主库保持一致,而逻辑备库只需要在逻辑结构上与主库保持一致>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 对于 DG 的 Maximum Performance, Maximum Protection, Maximum Availability 三种保护模式请给出详细的解释。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Maximum Protection 确保数据绝无丢失。<但不能确保用户事务的不间断> 事务在提交前,REDO不仅要被写入到本地的Online Redologs,还要同时写入到备库的Standby Redologs,并确保REOD数据至少在一个备库中可用。 如果出现网络等故障导致的备库不可用时,主库会被关闭。 Maximum Performance [默认保护模式] 在不影响主库性能的前提下,提供最高级别的数据保护策略。<但不能保证数据的绝对安全> 事务可以随时提交,当前主库的REDO数据至少需要写入一个备库中,不过这种写入可以是不同步的。 如果网络条件理想的话,这种模式能够提供类似最高可用性的数据保护,而仅对主库的性能有轻微影响。 Maximum Availability 在不影响主库可用前提下,提供最高级别的数据保护策略。 类似于最大保护模式,不同之处在于当出现故障导致备库数据库无法访问时,主库并不会被关闭,而是自动转换为最高性能模式,在等待备库恢复正常时,主库又会自动转换成最高可用性模式。 参数配置表 Maximum Protection Maximum Performance Maximum Availability AFFIRM NOAFFIRM AFFIRM SYNC ASYNC SYNC DB_UNIQUE_NAME DB_UNIQUE_NAME DB_UNIQUE_NAME 参数说明 AFFIRM/NOAFFIRM AFFIRM:保证重做日志被写进物理备用数据库,对数据库性能有影响。 NOAFFIRM:LGWR的IO操作是异步的[DG默认值]。 SYNC/ASYNC SYNC:使用LGWR进程从主库传输重做日志到备库节点,规定网络IO是同步。[默认,并且有并行属性] ASYNC:使用LGWR进程从主库传输重做日志到备库节点,规定网络IO是异步。
  • 保护模式

4. 请说明物理备库的的完整创建过程。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
物理备库创建准备 启用强制日志 <force_logging> - select name, database_role, force_logging from v$database; 配置备用重做日志组及归档位置 <数目=联机重做日志组+1> 配置log_archive参数 <log_archive_dest_n 确定归档存放的目标位置> - show parameter 主库启动归档模式 <arvhivelog> - archive log list 设置快速恢复区的大小 <db_recovery_file_dest_size> - show parameter 备份主库 <RMAN - 包含归档日志的完全备份> 创建物理备库 创建备库的网络服务名 <tnsname> 创建物理备库的静态监听 <重启监听程序> 将主库的口令文件复制到备库并重新命名 创建备库的初始化参数文件及目录 <pfile> 创建u01sby1目录 <[adump、dpdump、pfile]> 启动备库实例到nomount <pfile> 创建物理备库 使用RMAN连接到目标数据库(主库)、辅助数据库(备库) 使用预先创建的脚本复制数据库 退出RMAN,以sysdba权限连接到主库的SQL*Plus并执行日志切换 在备库的/etc/oratab文件中添加备库的ORACLE_HOME路径 在备库上以sysdba权限连接到SQL*Plus,启动重做应用 验证物理备库的正确性

在这里插入图片描述

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
SQL> SELECT group#, type, member FROM v$logfile; SQL> SELECT group#, type, member FROM v$logfile group by 1; SQL> SELECT group#, type, member FROM v$logfile 2 WHERE type = 'STANDBY'; SQL>SELECT group#, types, member from v$log; SQL> alter database add standby logfile ('/u01/app/oracle/oradata/boston/stdbyredo01.log') size 50M; SQL> ALTER DATABASE ADD STANDBY LOGFILE 2 '+DATA' SIZE 52428800; SQL> SELECT group#, dbid, thread#, sequence#, status 2 FROM v$standby log; !ls -l /u01/oradata/

5. 什么是 Data Guard Broker? 请对 Data Guard Broker 的配置过程加以详细说明。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
DG Broker 对于一个DG配置进行创建、控制和监控。 <分布式管理框架,能够将主库和备库按照一定的逻辑组织起来并进行集中管理。 包括创建、维护和监控DG等任务。 管理Broker设置可使用EM企业管理器或者DGMGRL命令行。> 配置过程 主库设置 dg_broker_start & dg_broker_config 静态监听 <重启监听程序> 备库设置 dg_broker_start & dg_broker_config 静态监听 <重启监听程序> 网络服务名 <tnsname> local_listener <指定备库监听名> 创建DG Broker配置 dgmgrl 创建配置 DGConfig <配置名称、主库名称和主库tnsname> show congiguration 在配置中添加备库信息 <配库名称和备库的tnsname> 启用配置 验证配置和Switchover

在这里插入图片描述

6. 在进行最大性能模式与最大可用模式、最大保护模式的转换时,都分别需要配置哪些参数?

复制代码
1
2
3
4
5
6
最大性能模式 -> 最大可用模式 <Protection Mode> LogxptMode='SYNC' <日志传输模式> log_archive_dest_1/2 最大性能模式 -> 最大保护模式 LogxptMode='SYNC'

7. 什么是 Snapshot Standby? 请对 Snapshot Standby 的转换过程进行解释?

复制代码
1
2
3
4
5
6
7
8
Snapshot Standby 一种将备库置为“可读写状态”的备库类型,方便进行模拟上线测试等在生产库上不能实现的任务。 <可更新的备库> 转换过程 快照备库状态暂时断开与主库的数据同步,虽然接受主库传过来的日志,但不能将主库的变化及时地应用在备库中。 <当快照备库重新转换回物理备库时,所有接受到的重做数据都会被应用,这时备库将与主库重新保持同步。> <均可在DG Broker下完成>

8. 什么是 Data Guard 的实时查询?

复制代码
1
2
3
4
5
可以在备库上实时查看到主库的修改状态。 <Oracle Active Data Guard选项被启用时,物理备库以只读权限打开, 也能接收主库传送的重做数据并应用重做,保持备库与主库的同步, 并且接收来自非管理员用户的一般查询事务>

9. 请对 Fast-Start Failover 的概念和用途给出解释,并说明它所适用的保护模式?

复制代码
1
2
3
4
在主库出现故障时,能快速可靠地自动把其中之一的备库切换成主数据库,而不需要任何人工干预。 适用于:高可用性模式[数据0丢失]和高性能模式<切换有可能导致数据丢失>。 一旦启用该功能,不可以中途切换保护模式。

10. 请说明配置 Fast-Start Failover 的完整过程。

复制代码
1
2
3
4
5
6
7
8
9
设置 Fast-Start Failover 设置 FastStartFailoverTarget <发生故障时需要转移到的目标数据库> MaxPerformance <Protection Mode> ASYNC <网络传输模式参数 LogXptMode> FastStartFailoverThreshold=90<触发阈值> & FastStartFailoverLagLimit=60<延迟重做应用> 启用 Fast-Start Failover show configuration verbose 启动 Oberserve

11. 请说明 Logical Sdandby 的完整创建过程。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
物理备库停止应用重做日志 修改主库初始化参数 <log_archive_dest_n DB_UNIQUE_NAME> 生成主库REDO数据字典 <dbms_logstdby.build> 物理备库转换为逻辑备库 创建逻辑备库口令文件,并重新命名 调整逻辑备库的相关参数 <log_archive_dest_n DB_UNIQUE_NAME> 以Resetlogs方式打开备库 逻辑备库数据库应用REDO 在DGMGRL中进行验证 启用u01sby1逻辑备库 检查并验证主备库同步

在这里插入图片描述

12 Gap

在这里插入图片描述

13 灾备切换

复制代码
1
2
3
switchover 可逆,容灾演练 failvoer 不可逆,应急切换
复制代码
1
2
3
active 不可恢复,独立 snapshot standby 可恢复,可读写

14 学习链接

  • 图说DG

最后

以上就是斯文美女最近收集整理的关于Oracle灾备 - Data Guard的全部内容,更多相关Oracle灾备内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(74)

评论列表共有 0 条评论

立即
投稿
返回
顶部