The data guard provides the following three kinds of protection modes:
1 Maximum protection mode (Maximum Protection)
"Maximum protection" here means that the maximum protection data is not lost, that is, at least one standby and primary maintain real-time synchronization, but this is costly, because as long as a transaction is committed, not only to write to the primary section of the online redo log, There's also a standby redo log written to at least one standby. A serious problem is that when a standby fails or a network failure causes the log to not be synchronized, the primary database is shutdown, which is not acceptable in the production system, so this pattern is rarely used.
2 Maximum Performance mode (Maximum performance)
The highest performance is just the opposite of maximum protection, and primary is almost unaffected when a transaction commits, as long as it is written to the primary online redo log. The redo is then synchronized to the standby, which makes it impossible to guarantee primary and standby real-time synchronization. This pattern in the actual application is more common, after all, primary is not affected is the most important, if there are too many standby behind primary, DBAs can manually intervene in the standby end apply redo.
3 Maximum availability mode (Maximum availability)
The highest availability mode is between the first two, under normal circumstances it is the same as the highest protection mode, but once the standby fails, switch to the highest performance mode immediately, primary will not shutdown. If the model is applied in practice, it is necessary to pay attention to the effect of real-time application on the performance of primary.
So how to configure and modify the DG protection mode? First you have to check the following 2 points:
1. Is the db_unique_name of the Primary Reserve library unique?
2. Does the Dg_config property of the Log_archive_config already contain all the primary repository Db_unique_name?
Once the above 2 points are confirmed, you can use Log_archive_dest_n to configure the following table to show the relationship between this parameter and the protection mode:
As you can see from the illustration above, the configuration of maximum protection and highest availability is identical (this is normal because maximum availability is normally the maximum protection): You must use the LGWR process to transfer redo, the network transport mode must be sync, the disk write option affirm, and you must configure standby redo Log
and the largest performance mode is more flexible, that can be used LGWR, can also use the arch process transmission redo, the network can be a sync can also async, disk IO can be affirm can also be noaffirm,standby redo log also optional (recommended).
After all of the parameters above confirm that the configuration is correct, you can modify the protection mode with the following statement:
ALTER database SET STANDBY database to maximize {availability | Performance | PROTECTION};
After the modification succeeds, you can verify the following statement:
SELECT Protection_mode from V$database;
See more highlights of this column: http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/