oracle11gr2dataguard

上传人:今*** 文档编号:105662577 上传时间:2019-10-13 格式:DOCX 页数:26 大小:86.43KB
返回 下载 相关 举报
oracle11gr2dataguard_第1页
第1页 / 共26页
oracle11gr2dataguard_第2页
第2页 / 共26页
oracle11gr2dataguard_第3页
第3页 / 共26页
oracle11gr2dataguard_第4页
第4页 / 共26页
oracle11gr2dataguard_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《oracle11gr2dataguard》由会员分享,可在线阅读,更多相关《oracle11gr2dataguard(26页珍藏版)》请在金锄头文库上搜索。

1、Oracle 11gR2 DataGuard教程Oracle 11gR2 DataGuard 教程(Physical Standby Database)目录第1章理论基础41.1概述41.2日志发送41.2.1使用ARCH进程41.2.2使用LGWR进程的SYNC(同步)方式41.2.3使用LGWR进程的ASYNC(异步)方式51.3日志接收61.4日志应用61.5数据保护模式71.5.1最大保护(Maximum Protection)71.5.2最高可用性(Maximum Availability)71.5.3最高性能(Maximum Performance)81.5.4修改数据保护模式8第

2、2章配置82.1配置参数说明82.1.1独立参数82.1.2主库参数102.1.3备库参数152.2环境介绍172.2.1主库环境172.2.2备库环境172.3配置过程182.3.1主库配置182.3.2备库配置212.3.3复制数据库232.4其他问题24第3章角色切换253.1SwitchOver253.1.1准备工作253.1.2主库切换为新备库253.1.3备库切换为新主库253.1.4新备库应用日志263.2FailOver26第1章 理论基础1.1 概述DataGuard至少需要两个数据库,一个以READ WRITE(读写)模式打开,进行在线事务处理,角色称为Primary Da

3、tabase(主库),一个以READ ONLY(只读)模式打开,接收重做日志并重新应用,角色称为Standby Database(备库)。用户连接主库进行事务处理,更改操作被记录在联机重做日志和归档重做日志中,这些日志通过网络发送给备库并在备库上重新应用,最终实现主备库数据同步。DataGuard由重做传输服务,应用服务和角色管理服务组成,其中前两项服务按照功能分为Redo Send(日志发送),Redo Receive(日志接收)和Redo Apply(日志应用)三个部分。DataGuard分为Physical Standy(物理备库)和Logical Standby(逻辑备库)两种,本教程

4、只讨论Physical Standby。1.2 日志发送主库在运行时会不断产生重做日志,这些日志需要发送到备库。发送动作可以由主库的LGWR进程或者ARCH进程完成,默认使用ARCH进程,如果使用LGWR进程必须明确指定。不同的归档目的地可以使用不同的方法,但对于同一目的地,只能选用1种方法。1.2.1 使用ARCH进程 主库不断产生重做日志,这些日志被LGWR进程写入主库联机重做日志文件,此时事务提交即可返回成功; 当一组联机重做日志文件被写满后,会发生日志切换(Log Switch)并触发ARCH进程进行本地归档; 主库的ARCH进程通过网络把这些归档日志发送给备库。使用ARCH进程发送日

5、志的问题:主库只有在发生归档时才会发送日志到备库,如果主库异常宕机,联机日志中的重做数据就会丢失,要想避免数据丢失,就必须使用LGWR进程发送日志,而使用LGWR 进程又分SYNC(同步)和ASYNC(异步)两种方式。1.2.2 使用LGWR进程的SYNC(同步)方式 主库不断产生重做日志,这些日志被LGWR进程写入主库联机重做日志文件,同时发送给本地的LNS进程(Logwriter Network Service); LNS进程通过网络把重做日志发送给远程目的地(每个远程目的地对应一个LNS进程,多个LNS进程能够并行工作)并等待远程确认传送成功; LGWR进程等待本地联机重做日志文件的写入

6、操作和通过LNS进程的网络传送都成功,确认主库事务提交成功。 当一组联机重做日志文件被写满后,会发生日志切换(Log Switch)并触发ARCH进程进行本地归档,同时触发备库的日志切换和备库重做日志的归档。使用LGWR进程的SYNC(同步)方式时,可以同时使用NET_TIMEOUT参数,这个参数单位是秒,如果网络发送在此时间内没有响应,LGWR进程就会返回错误。示例如下:SQL ALTER SYSTEM SET LOG_ARCHIVE_DEST_2 = SERVICE=ST LGWR SYNC NET_TIMEOUT=30 SCOPE=BOTH;使用LGWR进程的SYNC(同步)方式问题在于

7、:如果发送重做日志给备库失败,LGWR进程就会报错,分三种情况:主库工作在最大保护模式下,事务提交会返回失败,无重做数据生成,同时主库被SHUTDOWN,待问题解决后主库才能成功启动;主库工作在最大可用模式下,事务提交会返回成功,重做数据只写入本地日志文件,同时主库由最大可用模式降为最大性能模式,待问题解决后备库自动向主库请求传送缺失的日志并应用,主库重新恢复为最大可用模式;主库工作在最大性能模式下,事务提交会返回成功,重做数据只写入本地日志文件,待问题解决后备库自动向主库请求传送缺失的日志并应用。采用SYNC(同步)方式,主库的LGWR进程高度依赖网络状况,在某些情况下,这种要求可能过于苛刻

8、,这时就可以使用LGWR进程的ASYNC(异步)方式。1.2.3 使用LGWR进程的ASYNC(异步)方式 主库不断产生重做日志,这些日志被LGWR进程写入主库联机重做日志文件,同时发送给本地的LNS进程(Network Server Process),一旦成功写入联机重做日志文件,事务提交即可返回成功; LNS进程异步通过网络把重做日志发送给远程目的地(每个远程目的地对应一个LNS进程,多个LNS进程能够并行工作); 当一组联机重做日志文件被写满后,会发生日志切换(Log Switch)并触发ARCH进程进行本地归档,同时触发备库的日志切换和备库重做日志的归档。因为LGWR进程不会等待LNS

9、进程的响应结果,所以配置LGWR进程ASYNC(异步)方式时不需要NET_TIMEOUT参数。1.3 日志接收备库的RFS(Remote File Server)进程接收到重做日志,将其写入Standby Redo Log(SRL,备库重做日志)文件或者归档重做日志文件,具体写入哪个文件,取决于主库的日志传送方式(ARCH或LGWR)和备库的位置(本机或远程)。如果写入SRL文件,则当主库发生日志切换时,也会触发备库SRL切换,并把这个SRL归档。如果是写入归档日志文件,那么这个动作本身也可以看作是个归档操作。在日志接收中,需要注意的是备库归档日志的存放位置,具体如下: 如果配置了STANDB

10、Y_ARCHIVE_DEST参数,则使用该参数指定的目录; 如果某个LOG_ARCHIVE_DEST_n参数明确定义了VALID_FOR=(STANDBY_LOGFILE,*)选项,则使用这个参数指定的目录。 如果数据库的COMPATIBLE参数大于等于10.0,则选取任意一个LOG_ARCHIVE_DEST_n的值。 如果STANDBY_ARCHIVE_DEST和LOG_ARCHIVE_DEST_n参数都没有配置,使用缺省的STANDBY_ARCHIVE_DEST参数值,这个缺省值可以通过以下命令查询:SQL SHOW PARAMETER STANDBY_ARCHIVE_DEST1.4 日志

11、应用日志应用,就是在备库上应用重做日志,实现主备库数据同步。物理Standby使用MRP进程(Managed Recovery Process),利用Media Recovery(介质恢复)技术应用重做日志,在数据块级别进行恢复,这种方式叫做Redo Apply,没有数据类型的限制,可以保证两个数据库完全一致。物理Standby只能在MOUNT(加载)状态下进行恢复,也可以是OPEN(打开)状态,但只能以READ ONLY(只读)模式打开,且打开时不能执行恢复操作。(注意:Oracle 11g已经支持以只读模式打开的同时进行恢复操作,即READ ONLY WITH APPLY)。逻辑Stand

12、by使用LSP 进程(Logical Standby Process),利用Logminer 技术把日志内容还原成SQL语句,SQL引擎执行这些语句,这种方式叫SQL Apply,不支持所有数据类型(可以在视图DBA_LOGSTDBY_UNSUPPORTED中查看不支持的数据类型),如果使用了不支持的数据类型,则不能保证数据库完全一致。逻辑Standby可以在恢复的同时进行读写操作。根据Redo Apply发生的时间可以分成两种: Real-Time Apply(实时应用), 这种方式必须使用LGWR进程传送重做日志,每当日志被写入备库重做日志时,就会触发应用,使用这种方式可以减少数据库切换(

13、Switchover 或者Failover)的时间,因为切换时间主要用在剩余日志的应用上。 归档时应用,这种方式在主库发生日志切换,触发备库归档操作,归档完成后进行应用,这是默认的应用方式。物理Standby启用实时应用的命令:SQL ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;逻辑Standby启用实时应用的命令:SQL ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE;查看是否启用实时应用的命

14、令:SQL SELECT RECOVERY_MODE FROM V$ARCHIVE_DEST_STATUS;1.5 数据保护模式Data Guard 允许定义三种数据保护模式,分别是最大保护(Maximum Protection),最大可用(Maximum Availability)和最大性能(Maximum Performance)。1.5.1 最大保护(Maximum Protection)这种模式能够确保绝无数据丢失。要实现这一步当然是有代价的,它要求所有的事务在提交前其REDO不仅被写入到本地的在线重做日志文件,还要同时写入到备库的重做日志文件,并确认REDO数据至少在一个备库中可用(

15、如果有多个的话),然后才会在主库上提交。如果出现故障导致备库不可用的话(例如网络中断),主库会被SHUTDOWN,以防数据丢失。使用这种模式要求备库必须配置重做日志文件组,而主库必须使用LGWR进程的SYNC,AFFIRM 方式传送日志到备库。1.5.2 最高可用性(Maximum Availability)这种模式在不影响主库可用前提下,提供最高级别的数据保护策略。其实现方式与最大保护模式类似,同样要求本地事务在提交前必须至少写入一个备库的重做日志文件中。与最大保护模式不同的是,如果备库由于故障无法访问,主库不会被SHUTDOWN,而是自动转为最高性能模式,等备库恢复正常之后,主库又会自动转换成最高可用性模式。这种模式会尽量避免数据丢失,但不能绝对保证数据完全一致。这种方式要求备库必须配置重做日志组,而主库必须使用LGWR进程的SYNC,AFFIRM 方式传送日志到备库。1.5.3 最高性能(Maximum Performance)这种模式在不影响主库性

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号