I was told after a Oracle database restoration, the database could not be opened. When attempting to open the database, the following error message were encountered:
Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\\Users\\Administrator>sqlplus / as sysdba
SQL*Plus: Release 12.2.0.1.0 Production on Wednesday Sep 11 10:53:58 2024
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup;
ORACLE instance started.
Total System Global Area 1.0335E+10 bytes
Fixed Size 1248608 bytes
Variable Size 6777900496 bytes
Database Buffers 3489660928 bytes
Redo Buffers 54636544 bytes
Database mounted.
ORA-00603: ORACLE server session terminated by fatal error
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00704: bootstrap process failure
ORA-00604: error occurred at recursive SQL level 1
ORA-00904: "ACDRROWTSINTCOL#": invalid identifier
Process ID: 6016
Session ID: 3389 Serial number: 40803
I’ve noticed the the Oracle version in use is 12.2.0.1.0, but the compatible parameter in the PFILE is set to 12.1.0.2.0. This discrepancy indicates that the database restored from version 12.1.0.2.0 needs to to upgraded to the current environment version 12.2.0.1.0.
- Start the database in upgrade mode:
sqlplus / as sysdba
startup upgrade
exit
2. Set the relevant environment variables and execute upgrade script :
SET ORACLE_HOME=D:\\APP\\ORAADMIN\\PRODUCT\\12.2.0\\DBHOME_1
SET ORACLE_SID=ORCL
cd %ORACLE_HOME%\\rdbms\\admin
%ORACLE_HOME%\\rdbms\\admin\\perl catctl.pl -n 4 catupgrd.sql
The script takes some moments to complete.
3. Recompile invalid PL/SQL modules:
@?/rdbms/admin/utlrp.sql
4. Reboot the database again.
shutdown immediate;
startup;
5. Verify the component is updated.
select comp_name,version from dba_registry where status = 'VALID';
By performing the above steps, the database was successfully upgraded and opened without errors.





Leave a comment