DataGuard保护模式介绍及切换示例
2012-06-07 15:11
405 查看
三大保护模式
最大保护(Maximumprotection):
这种模式能够确保绝无数据丢失。要实现这一步当然是有代价的,它要求所有的事务在提交前其redo不仅被写入到本地的onlineredolog,还要同时提交到standby数据库的standbyredolog,并确认redo数据至少在一个standby数据库可用(如果有多个的话),然后才会在primary数据库上提交。如果出现了什么故障导致standby数据库不可用的话,primary数据库会被shutdown。
最高性能(Maximumperformance):
这种模式提供在不影响primary数据库性能前提下最高级别的数据保护策略。事务可以随时提交,当前primary数据库的redo数据也需要至少写入一个standby数据库,不过这种写入可以是不同步的。如果网络条件理想的话,这种模式能够提供类似最高可用性的数据保护而仅对primary数据库有轻微的性能影响。
最高可用性(Maximumavailability):
这种模式提供在不影响primary数据库可用前提下最高级别的数据保护策略。其实现方式与最大保护模式类似,也是要求所有事务在提交前必须保障redo数据至少在一个standby数据库可用,不过与之不同的是,如果出现故障导入无法同时写入standby数据库redolog,primary数据库并不会shutdown,而是自动转为最高性能模式,等standby数据库恢复正常之后,它又会再自动转换成最高可用性模式。
最大保护及最高可用性需要至少一个standby数据库redo数据被同步写入。三种模式都需要指定LOG_ARCHIVE_DEST_n初始化参数。
最高性能->最高可用保护模式切换
1、查看当前数据库保护模式 ---主库(sms01)
2、修改初始化参数 ---主库(sms01)
3、设置新的保护模式-最高可用,并重启主库 ---主库(sms01)
4、查看新的保护模式是否设置成功 ---主库(sms01)
5、修改备库的初始化参数 ---备库(sms02)
6、查看备库的保护模式 ---备库(sms02)
7、验证”最高可用性“效果
关闭备库 ---备库(sms02)
查看备库关闭后主库状态 ---主库(sms01)
重新启动备库 ---备库(sms02)
查看备库恢复后的主库状态 ---主库(sms01)
---END---
备注:
本文出自 “鼠标爱上键盘” 博客,转载请与作者联系!
最大保护(Maximumprotection):
这种模式能够确保绝无数据丢失。要实现这一步当然是有代价的,它要求所有的事务在提交前其redo不仅被写入到本地的onlineredolog,还要同时提交到standby数据库的standbyredolog,并确认redo数据至少在一个standby数据库可用(如果有多个的话),然后才会在primary数据库上提交。如果出现了什么故障导致standby数据库不可用的话,primary数据库会被shutdown。
最高性能(Maximumperformance):
这种模式提供在不影响primary数据库性能前提下最高级别的数据保护策略。事务可以随时提交,当前primary数据库的redo数据也需要至少写入一个standby数据库,不过这种写入可以是不同步的。如果网络条件理想的话,这种模式能够提供类似最高可用性的数据保护而仅对primary数据库有轻微的性能影响。
最高可用性(Maximumavailability):
这种模式提供在不影响primary数据库可用前提下最高级别的数据保护策略。其实现方式与最大保护模式类似,也是要求所有事务在提交前必须保障redo数据至少在一个standby数据库可用,不过与之不同的是,如果出现故障导入无法同时写入standby数据库redolog,primary数据库并不会shutdown,而是自动转为最高性能模式,等standby数据库恢复正常之后,它又会再自动转换成最高可用性模式。
最大保护及最高可用性需要至少一个standby数据库redo数据被同步写入。三种模式都需要指定LOG_ARCHIVE_DEST_n初始化参数。
最高性能->最高可用保护模式切换
1、查看当前数据库保护模式 ---主库(sms01)
SQL> select protection_mode,protection_level from v$database; PROTECTION_MODE PROTECTION_LEVEL -------------------- -------------------- MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE
2、修改初始化参数 ---主库(sms01)
SQL> alter system set log_archive_dest_2='SERVICE=sms02 2 OPTIONAL LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) 3 DB_UNIQUE_NAME=sms02'; System altered.
3、设置新的保护模式-最高可用,并重启主库 ---主库(sms01)
SQL> alter database set standby database to maximize availability; Database altered. SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> startup ORACLE instance started. Total System Global Area 3290345472 bytes Fixed Size 2217832 bytes Variable Size 1795164312 bytes Database Buffers 1476395008 bytes Redo Buffers 16568320 bytes Database mounted. Database opened.
4、查看新的保护模式是否设置成功 ---主库(sms01)
SQL> SQL> select protection_mode,protection_level from v$database; PROTECTION_MODE PROTECTION_LEVEL -------------------- -------------------- MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
5、修改备库的初始化参数 ---备库(sms02)
SQL> alter system set log_archive_dest_2='SERVICE=sms01 2 OPTIONAL LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) 3 DB_UNIQUE_NAME=sms01'; System altered.
6、查看备库的保护模式 ---备库(sms02)
SQL> select protection_mode,protection_level from v$database; PROTECTION_MODE PROTECTION_LEVEL -------------------- -------------------- MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
7、验证”最高可用性“效果
关闭备库 ---备库(sms02)
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down.
查看备库关闭后主库状态 ---主库(sms01)
SQL> select protection_mode,protection_level from v$database; PROTECTION_MODE PROTECTION_LEVEL -------------------- -------------------- MAXIMUM AVAILABILITY RESYNCHRONIZATION
重新启动备库 ---备库(sms02)
SQL> startup mount ORACLE instance started. Total System Global Area 3290345472 bytes Fixed Size 2217832 bytes Variable Size 1795164312 bytes Database Buffers 1476395008 bytes Redo Buffers 16568320 bytes Database mounted. SQL> alter database open read only; Database altered. SQL> alter database recover managed standby database using current logfile disconnect from session; Database altered.
查看备库恢复后的主库状态 ---主库(sms01)
SQL> select protection_mode,protection_level from v$database; PROTECTION_MODE PROTECTION_LEVEL -------------------- -------------------- MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
---END---
备注:
最大保护 | 最高可能用 | 最高性能 | |
Redo | LGWR | LGWR | LGWR或ARCH |
网络传输模式 | SYNC | SYNC | LGWR进程时SYNC或ASYNC,ARCH进程时SYNC |
磁盘写操作 | AFFIRM | AFFIRM | AFFIRM或NOAFFIRM |
是否需要standby redologs | YES | YES | 可没有但推荐有 |
相关文章推荐
- [terry笔记]11gR2_dataguard_保护模式切换
- DATAGUARD-3种保护模式切换
- Oracle 11G DataGuard的三种保护模式介绍
- ORACLE 11G dataguard安装配置手册--单实例物理standby 三种保护模式互相切换
- Oracle 11G DataGuard的三种保护模式介绍
- DataGuard 数据保护模式切换
- dataguard 切换保护模式
- dataguard保护模式切换(PROTECTION | AVAILABILITY | PERFORMANCE)
- dataguard保护模式切换(PROTECTION | AVAILABILITY | PERFORMANCE)
- dataguard的保护模式转化和主从切换
- oracle 11g DataGuard 数据保护模式切换
- GoldenGate 传统抽取进程随 DataGuard 主备快速切换的方案(ADG 模式)
- 保护模式小结(三)——任务切换
- 保护模式下的编程<六>---任务切换
- [Rx86OS-III] 由实模式切换到保护模式
- DataGuard保护模式
- 实模式与保护模式切换
- 80x86保护模式系列教程(4)实模式与保护模式切换实例
- 理解0.11内核setup.s中实模式与保护模式的切换
- (实模式+保护模式)模式切换的过程步骤(代码+文字解析)