sql >> Databáze >  >> RDS >> Oracle

ORA-01264:Nelze vytvořit název souboru protokolu

Jsem v procesu výměny produkčního hardwaru za databázi Oracle RAC. Abych toho dosáhl s nulovými prostoji, přidávám nové uzly a poté rozšiřuji databázi RAC tak, aby běžela na starých i nových uzlech. Poté odstraním staré uzly, jakmile již nebudou mít žádná databázová připojení.

Při přidávání nových uzlů jsem potřeboval přidat další vlákna redo pro podporu nových instancí. To znamená, že jsem pro tato vlákna potřeboval přidat nové skupiny Online Redo Log. Ve spěchu, abych dokončil tento projekt, jsem zapomněl vzít v úvahu svou fyzickou pohotovostní databázi. Jakmile pohotovostní režim přijal opakované záznamy k vytvoření ORL, okamžitě vyvolal následující chyby:

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)

Já hlupák. Naštěstí je to snadná oprava. V pohotovostním režimu vydejte:

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

System altered.

Poté sledujte, jak probíhá obnova média. V protokolu výstrah se zobrazí upozornění, že ORL nebude přidán, což je v pořádku, protože pohotovostní režim již má své ORL.

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 

Jakmile byla aplikována dostatečná obnova, nastavil jsem parametr zpět na původní hodnotu.

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

System altered.

Mohl jsem to udělat, protože během doby, kdy byly ORL přidány do primární, nebyly dokončeny žádné další úkoly správy souborů.


  1. ORA-01438:hodnota větší než specifikovaná přesnost povolená pro tento sloupec při vkládání 3

  2. Jak mohu provést tři spojení tabulek v dotazu UPDATE?

  3. Jak získat aktuální čas v PostgreSQL

  4. Jak opravit „Požadavek COMMIT TRANSACTION nemá odpovídající BEGIN TRANSACTION“ v SQL Server