I was configuring an Oracle Data Guard 19c database, and when I tried to start the database, I received the following error:
[oracle@techserver dbs]$ sqlplus "/as sysdba" SQL*Plus: Release 19.0.0.0.0 - Production on Mon Jul 5 01:03:14 2021 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to an idle instance. SQL> startup mount pfile=inittech1.ora ORA-01261: Parameter db_recovery_file_dest destination string cannot be translated SQL> exit Disconnected
After some analysis, I concluded that the error was the “*.db_recovery_file_dest” parameter configured in the database.
[oracle@techserver dbs]$ cat initTECH1.ora TECH1.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment *.compatible='12.2.0' *.db_block_size=8192 *.db_file_name_convert='+DATA','+DATA' *.db_name='TECH' *.db_unique_name='TECH_ltm_dr' *.fal_client='TECH_LTM_DR1,TECH_LTM_DR2' *.fal_server='TECHPRD1D1,TECHPRD2' *.log_archive_config='DG_CONFIG=(TECH_LTM_DR,TECH)' *.log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=TECH_LTM_DR' *.log_archive_dest_2='SERVICE=TECH_LTM_DR VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=TECH' *.log_file_name_convert='+DATA','+DATA' *.standby_file_management='AUTO' *.db_recovery_file_dest='+DATA/FRA/' *.db_recovery_file_dest_size=40G [oracle@techserver dbs]$ vi initTECH1.ora
When you use a location on ASM, it is only necessary to specify the name of the disk group and not the directories inside the disk group. Knowing that I configured the parameter from :
*.db_recovery_file_dest='+DATA/FRA/' *.db_recovery_file_dest_size=40G [oracle@techserver dbs]$ vi initTECH1.ora
To:
*.db_recovery_file_dest='+DATA/FRA/' [oracle@techserver dbs]$ vi initTECH1.ora
After the modification the pfile had the output below:
[oracle@techserver dbs]$ cat initTECH1.ora TECH1.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment *.compatible='12.2.0' *.db_block_size=8192 *.db_file_name_convert='+DATA','+DATA' *.db_name='TECH' *.db_unique_name='TECH_ltm_dr' *.fal_client='TECH_LTM_DR1,TECH_LTM_DR2' *.fal_server='TECHPRD1D1,TECHPRD2' *.log_archive_config='DG_CONFIG=(TECH_LTM_DR,TECH)' *.log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=TECH_LTM_DR' *.log_archive_dest_2='SERVICE=TECH_LTM_DR VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=TECH' *.log_file_name_convert='+DATA','+DATA' *.standby_file_management='AUTO' *.db_recovery_file_dest='+DATA' *.db_recovery_file_dest_size=40G
Consequently, the startup worked after that:
]$ sqlplus "/as sysdba" SQL*Plus: Release 19.0.0.0.0 - Production on Mon Jul 5 01:08:08 2021 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to an idle instance. SQL> startup mount pfile=initTECH1.ora ORACLE instance started. Total System Global Area 297794752 bytes Fixed Size 8895680 bytes Variable Size 230686720 bytes Database Buffers 50331648 bytes Redo Buffers 7880704 bytes Database mounted. SQL> exit Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0
Hi! I am Bruno, a Brazilian born and bred, and I am also a naturalized Swedish citizen. I am a former Oracle ACE and, to keep up with academic research, I am a Computer Scientist with an MSc in Data Science and another MSc in Software Engineering. I have over ten years of experience working with companies such as IBM, Epico Tech, and Playtech across three different countries (Brazil, Hungary, and Sweden), and I have joined projects remotely in many others. I am super excited to share my interests in Databases, Cybersecurity, Cloud, Data Science, Data Engineering, Big Data, AI, Programming, Software Engineering, and data in general.
(Continue reading)