I got “ORA-16028: new db_recovery_file_dest causes less destinations than LOG_ARCHIVE_MIN_SUCCEED_DEST requires | ORA-02097: parameter cannot be modified because specified value is invalid ” error in Oracle database.
ORA-16028: new db_recovery_file_dest causes less destinations than LOG_ARCHIVE_MIN_SUCCEED_DEST requires
You are performing a Data Pump export (expdp), and it fails with the following errors. Details of error are as follows.
SQL> alter system set db_recovery_file_dest='' scope=both sid='*'; alter system set db_recovery_file_dest='' scope=both sid='*' * ERROR at line 1: ORA-02097: parameter cannot be modified because specified value is invalid ORA-16028: new db_recovery_file_dest causes less destinations than LOG_ARCHIVE_MIN_SUCCEED_DEST requires SQL>
ALTER SYSTEM SET LOG_ARCHIVE_DEST_n fails with ORA-02097, ORA-16028.
[Example] ALTER SYSTEM SET log_archive_dest_1='LOCATION=/tmp/a1 NOREOPEN ALTERNATE=log_archive_dest_2' SCOPE=BOTH; ALTER SYSTEM SET log_archive_dest_1='LOCATION=/tmp/a2 NOREOPEN ALTERNATE=log_archive_dest_2' SCOPE=BOTH; [Error] SQL> ALTER SYSTEM SET log_archive_dest_1='LOCATION=/tmp/a1 NOREOPEN ALTERNATE=log_archive_dest_2' SCOPE=BOTH; System altered. SQL> ALTER SYSTEM SET log_archive_dest_1='LOCATION=/tmp/a2 NOREOPEN ALTERNATE=log_archive_dest_2' SCOPE=BOTH; ALTER SYSTEM SET log_archive_dest_1='LOCATION=/tmp/a2 NOREOPEN ALTERNATE=log_archive_dest_2' SCOPE=BOTH * ERROR at line 1: ORA-02097: parameter cannot be modified because specified value is invalid ORA-16028: new LOG_ARCHIVE_DEST_1 causes less destinations than LOG_ARCHIVE_MIN_SUCCEED_DEST requires
ORA-02097, ORA-16028 occurs when you change the LOG_ARCHIVE_DEST_n parameter value twice.
This problem is caused by Bug 16746404.
BUG 16746404 – INCONSISTENT STATUS OF V$ARCHIVE_DEST AFTER BROKER RE-ENABLES A MEMBER
The LOG_ARCHIVE_DEST_N state changes to UNKNOWN in the 1st ALTER statement, and parameter values can not be changed in the 2nd ALTER statement.
SQL> select dest_name,valid_now from v$archive_dest where dest_name='LOG_ARCHIVE_DEST_1'; DEST_NAME VALID_NOW ------------------------------ ---------------- LOG_ARCHIVE_DEST_1 UNKNOWN
Change the LOG_ARCHIVE_DEST_N parameter state to ENABLE.
[Example] ALTER SYSTEM SET log_archive_dest_1='LOCATION=/tmp/a1 NOREOPEN ALTERNATE=log_archive_dest_2' SCOPE=BOTH; ALTER SYSTEM SET log_archive_dest_state_1=enable SCOPE=BOTH; ALTER SYSTEM SET log_archive_dest_1='LOCATION=/tmp/a2 NOREOPEN ALTERNATE=log_archive_dest_2' SCOPE=BOTH;
Do you want to learn Oracle Database for Beginners, then read the following articles.
Oracle Tutorial | Oracle Database Tutorials for Beginners ( Junior Oracle DBA )