O erro acontece quando tento alterar qualquer dos destinos de archives, como abaixo:
SQL> alter system set LOG_ARCHIVE_DEST_1='LOCATION=/u01/archive/dbtst'; * ERROR at line 1: ORA-02097: parameter cannot be modified because specified value is invalid ORA-16019: cannot use LOG_ARCHIVE_DEST_1 with LOG_ARCHIVE_DEST or LOG_ARCHIVE_DUPLEX_DEST
Solução:
1) Anular o parâmetro LOG_ARCHIVE_DEST
SQL> ALTER SYSTEM set log_archive_dest=''; System altered.
2) Definir para um destino de archive (no meu caso o primeiro) o valor que estava atribuído para o parâmetro LOG_ARCHIVE_DEST
SQL> alter system set LOG_ARCHIVE_DEST_1='LOCATION=/u01/archive/dbtst'; System altered.
Mais será que está funcionando?
SQL> select dest_id, status from v$archive_dest;
DEST_ID STATUS
---------- ---------
1 VALID
2 INACTIVE
3 INACTIVE
4 INACTIVE
5 INACTIVE
6 INACTIVE
7 INACTIVE
Sim
Oracle sempre surpreendendo, dessa vez com um restore em RMAN. Essa eu peguei sexta-feira passada em um cliente o ambiente era um Oracle 10g 64b em um Red Hat Linux 5.
O erro ocorria assim: Sempre quando tentava realizar um restore da base a seguinte mensagem era mostrada pelo RMAN.
RMAN-06026: some targets not found - aborting restore RMAN-06023: no backup or copy of datafile 4 found to restore RMAN-06023: no backup or copy of datafile 5 found to restore
Já pensei comigo, “poxa não tenho backups dos datafiles 4 e 5″ mais o problema estava ai, eu tinha o backup dos datafiles 4 e 5. Veja abaixo que quando peço para listar os backups do banco ele sinaliza o backup para os datafiles 4 e 5:
RMAN> list backup of database;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
9965 Incr 0 50.13G DISK 00:49:12 22.02.2012 14:15:11
BP Key: 8201 Status: AVAILABLE Compressed: YES Tag: FULL_DB
Piece Name: /oracle/backup/FULL_DB_1.bkp
List of Datafiles in backup set 9965
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- ------------------- ----
1 0 Incr 92563519151 22.02.2012 14:15:11 /oradata/system01.dbf
2 0 Incr 92563519151 22.02.2012 14:15:11 /oradata/df_tst1.dbf
3 0 Incr 92563519151 22.02.2012 14:15:11 /oradata/sysaux01.dbf
4 0 Incr 92563519151 22.02.2012 14:15:11 /oradata/datafiledb1.dbf
5 0 Incr 92563519151 22.02.2012 14:15:11 /oradata/datafiledb2.dbf
6 0 Incr 92563519151 22.02.2012 14:15:11 /oradata/users01.dbf
7 0 Incr 92563519151 17.02.2012 14:15:11 /oradata/undotbs01.dbf
Mesmo apresentando no backup que os datafiles 4 e 5 estavam presentes não adiantava, o erro RMAN-06023 aparecia:
RMAN> RESTORE DATABASE; using target database control file instead of recovery catalog allocated channel: c1 channel c1: sid=321 devtype=DISK Starting restore at 22.02.2012 15:15:21 released channel: c1 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of restore command at 22/02/2012 15:15:22 RMAN-06026: some targets not found - aborting restore RMAN-06023: no backup or copy of datafile 4 found to restore RMAN-06023: no backup or copy of datafile 5 found to restore
Realmente o erro era inesperado, pois eu tinha o backup:
RMAN> list backup of datafile 4;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
9965 Incr 0 50.13G DISK 00:49:12 22.02.2012 14:15:11
BP Key: 8201 Status: AVAILABLE Compressed: YES Tag: FULL_DB
Piece Name: /oracle/backup/FULL_DB_1.bkp
List of Datafiles in backup set 9965
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- ------------------- ----
4 0 Incr 92563519151 22.02.2012 14:15:11 /oradata/datafiledb1.dbf
RMAN> list backup of datafile 5;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
9965 Incr 0 50.13G DISK 00:49:12 22.02.2012 14:15:11
BP Key: 8201 Status: AVAILABLE Compressed: YES Tag: FULL_DB
Piece Name: /oracle/backup/FULL_DB_1.bkp
List of Datafiles in backup set 9965
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- ------------------- ----
5 0 Incr 92563519151 22.02.2012 14:15:11 /oradata/datafiledb2.dbf
Solução encontrada? Desabilitar a Flash Recovery Area. Isso mesmo, após desabilitar a flash recovery area o problema não aconteceu mais.
Mais porque? Bom …
Quando iniciamos um restore de uma base através de um backup de controlfile em que a flash recovery area está habilita o RMAN executa um implícito crosscheck e cataloga todos os objetos na flash recovery area. Com isso o RMAN vai catalagar QUALQUER objeto que estiver na flash recovery area e se qualquer um desses arquivos pertencer a uma encarnação diferente da ATUAL encarnação do controlfile então muda a atual encarnação para do arquivo que está sendo catalogado.
Isso de acordo com a Oracle evita ao banco de dados restaurar backups que pertencem a uma velha encarnação. Para mais detalhes veja a nota 965122.1 do suporte Oracle.
Após desabilitado a flash recovery area, meu restore funcionou perfeitamente
