Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

ORA-01264:Não é possível criar o nome do arquivo de log


Estou substituindo o hardware de produção por um banco de dados Oracle RAC. Para fazer isso com tempo de inatividade zero, estou adicionando os novos nós e, em seguida, estendendo o banco de dados RAC para ser executado em nós antigos e novos. Em seguida, removerei os nós antigos quando eles não tiverem mais conexões de banco de dados.

Ao adicionar novos nós, precisei adicionar threads adicionais de redo para dar suporte às novas instâncias. Isso significa que eu precisava adicionar novos grupos de redo log online para esses threads. Na minha pressa para concluir este projeto, esqueci de levar em consideração meu banco de dados físico de espera. Depois que o standby recebeu os registros de redo para criar os ORLs, ele imediatamente lançou os seguintes erros:
Thu Jun 29 14:17:44 2017
Media Recovery Log /u01/app/oracle/admin/orcls/arch/7_63989_677462342.dbf
No OMF destination specified, unable to create logs 
Errors with log /u01/app/oracle/admin/orcls/arch/7_63989_677462342.dbf
MRP0: Background Media Recovery terminated with error 1264
Thu Jun 29 14:17:44 2017
Errors in file /u01/app/oracle/diag/rdbms/orcls/orcls1/trace/orcls1_pr00_22818.trc:
ORA-01264: Unable to create logfile file name
Recovery interrupted!
Completed: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT USING ARCHIVED LOGFILE
Recovered data files to a consistent state at change 259717189001
Thu Jun 29 14:17:45 2017
Errors in file /u01/app/oracle/diag/rdbms/orcls/orcls1/trace/orcls1_pr00_22818.trc:
ORA-01264: Unable to create logfile file name
Thu Jun 29 14:17:45 2017
MRP0: Background Media Recovery process shutdown (orcls1)



Bobo eu. Felizmente, esta é uma solução fácil. No modo de espera, emita:
SQL> alter system set standby_file_management=MANUAL scope=memory;

System altered.



Em seguida, observe a recuperação da mídia ocorrer. Veremos um aviso no log de alertas de que o ORL não será adicionado, o que é bom porque o standby já possui seus ORLs.
Media Recovery Log /u01/app/oracle/admin/orcls/arch/7_63989_677462342.dbf
WARNING: standby_file_management is set to MANUAL
Online logs not added for newly enabled thread 1 


Depois que a recuperação suficiente foi aplicada, defino o parâmetro de volta ao seu valor original.
SQL> alter system set standby_file_management=AUTO scope=memory;

System altered.

Eu poderia fazer isso porque não havia outras tarefas de gerenciamento de arquivos concluídas durante o tempo em que os ORLs foram adicionados ao primário.