sql >> Database >  >> RDS >> Oracle

ORA-01264:Kan de bestandsnaam van het logbestand niet maken

Ik ben bezig met het vervangen van productiehardware voor een Oracle RAC-database. Om dit te doen zonder downtime, voeg ik de nieuwe knooppunten toe en breid ik vervolgens de RAC-database uit om op zowel oude als nieuwe knooppunten te draaien. Dan zal ik de oude nodes verwijderen zodra ze geen databaseverbindingen meer hebben.

Bij het toevoegen van nieuwe knooppunten moest ik extra threads van opnieuw toevoegen om de nieuwe instanties te ondersteunen. Dit betekent dat ik nieuwe Online Redo Log-groepen voor die threads moest toevoegen. In mijn haast om dit project af te krijgen, vergat ik rekening te houden met mijn fysieke standby-database. Zodra de standby de herhalingsrecords had ontvangen om de ORL's te maken, veroorzaakte het prompt de volgende fouten:

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)

Domme Ik. Gelukkig is dit een gemakkelijke oplossing. Geef op stand-by het volgende uit:

SQL> alter system set standby_file_management=MANUAL scope=memory;

System altered.

Kijk dan hoe het mediaherstel plaatsvindt. We zullen een waarschuwing zien in het waarschuwingslogboek dat de ORL niet wordt toegevoegd, wat oké is omdat de standby al zijn ORL's heeft.

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 

Zodra er voldoende herstel is toegepast, zet ik de parameter terug naar de oorspronkelijke waarde.

SQL> alter system set standby_file_management=AUTO scope=memory;

System altered.

Ik kon hiermee wegkomen omdat er geen andere bestandsbeheertaken waren voltooid gedurende de tijd dat de ORL's aan de primaire werden toegevoegd.


  1. Verkrijg het aantal dagen tussen twee datums in Oracle, inclusief de datums

  2. Een DBF-bestand importeren in SQL Server

  3. Het standaardspoor verwijderen - Deel 2

  4. Reset sequentiewaarde als 1