逐级修改保护模式,不需要重启db,performance(性能)-----> availablity(可用)要等待resync完成,再 --------> protection(保护)
1.查看当前保护模式
----当前最大性能模式
sys@ORCL>select protection_mode, protection_level from v$database;
PROTECTION_MODE PROTECTION_LEVEL
-------------------- --------------------
MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE
sys@ORCL>show parameter log_archive_dest_2
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2 string service=orclps1 async valid_fo
r=(online_logfile,primary_role
) db_unique_name=orclps1
sys@ORCL>show parameter log_archive_dest_3
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_3 string service=orclps2 async valid_fo
r=(online_logfile,primary_role
) db_unique_name=orclps2
2.最大性能---->最大可用性
-------------------->修改参数
sys@ORCL>alter system set log_archive_dest_2='service=orclps1 sync affirm net_timeout=10 valid_for=(online_logfile,primary_role) db_unique_name=orclps1';
System altered.
sys@ORCL>alter system set log_archive_dest_3='service=orclps2 sync affirm net_timeout=10 valid_for=(online_logfile,primary_role) db_unique_name=orclps2';
System altered.
----设置最大可用
sys@ORCL>alter database set standby database to maximize availability;
Database altered.
----等待resync完成
sys@ORCL>select protection_mode,protection_level from v$database;
PROTECTION_MODE PROTECTION_LEVEL
-------------------- --------------------
MAXIMUM AVAILABILITY RESYNCHRONIZATION
----当日志应用跟不上LGWR进程,10s后将转为异步传输
sys@ORCL>select protection_mode,protection_level from v$database;
PROTECTION_MODE PROTECTION_LEVEL
-------------------- --------------------
MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
3.最大可用---->最大保护
-------------------->修改参数
sys@ORCL>alter system set log_archive_dest_2='service=orclps1 sync affirm valid_for=(online_logfile,primary_role) db_unique_name=orclps1';
System altered.
sys@ORCL>alter system set log_archive_dest_3='service=orclps2 sync affirm valid_for=(online_logfile,primary_role) db_unique_name=orclps2';
System altered.
----设置最大保护
sys@ORCL>alter database set standby database to maximize protection;
Database altered.
sys@ORCL> select protection_mode, protection_level from v$database;
PROTECTION_MODE PROTECTION_LEVEL
-------------------- --------------------
MAXIMUM PROTECTION MAXIMUM PROTECTION
4.最大保护---->最大性能
-------------------->修改参数
sys@ORCL>alter system set log_archive_dest_2='service=orclps1 async valid_for=(online_logfile,primary_role) db_unique_name=orclps1';
System altered.
----修改第二个参数发现报错
sys@ORCL>alter system set log_archive_dest_3='service=orclps2 async valid_for=(online_logfile,primary_role) db_unique_name=orclps2';
alter system set log_archive_dest_3='service=orclps2 async valid_for=(online_logfile,primary_role) db_unique_name=orclps2'
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-16159: Cannot change protected standby destination attributes
----先把保护模式改为最大性能
sys@ORCL>alter database set standby database to maximize performance;
Database altered.
----再次修改成功
sys@ORCL>alter system set log_archive_dest_3='service=orclps2 async valid_for=(online_logfile,primary_role) db_unique_name=orclps2';
System altered.
sys@ORCL> select protection_mode, protection_level from v$database;
PROTECTION_MODE PROTECTION_LEVEL
-------------------- --------------------
MAXIMUM PERFORMANCE MAXIMUM PERFORMANCE
5.最大性能---->最大保护
----修改参数
sys@ORCL>alter system set log_archive_dest_2='service=orclps1 sync affirm valid_for=(online_logfile,primary_role) db_unique_name=orclps1';
System altered.
sys@ORCL>alter system set log_archive_dest_3='service=orclps2 sync affirm valid_for=(online_logfile,primary_role) db_unique_name=orclps2';
System altered.
----先设置为最大可用
sys@ORCL>alter database set standby database to maximize availability;
Database altered.
sys@ORCL>select protection_mode,protection_level from v$database;
PROTECTION_MODE PROTECTION_LEVEL
-------------------- --------------------
MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY
----然后设置最大保护
sys@ORCL>alter database set standby database to maximize protection;
Database altered.
sys@ORCL>select protection_mode,protection_level from v$database;
PROTECTION_MODE PROTECTION_LEVEL
-------------------- --------------------
MAXIMUM PROTECTION MAXIMUM PROTECTION