Tuesday, October 20, 2026
  • About Us
  • Contact
DBAInsight
  • Guides
    • 23ai
    • RMAN
    • 26ai
    • Patch Update
    • RMAN
    • MySQL
    • Oracle GoldenGate
  • Cloud Technology
  • Case Studies
  • Troubleshooting
  • Training & Certification
NEWSLETTER
No Result
View All Result
DBAInsight
Home Troubleshooting

ORA-04063 and ORA-00904 on “SYS.DBA_REGISTRY” Has Errors

November 9, 2025
in Troubleshooting
5
Fixing ORA-04063 and ORA-00904 on SYS.DBA_REGISTRY
0
SHARES
390
VIEWS

Table of Contents

Toggle
  • Overview
  • Related posts
  • Oracle Enterprise Manager 24ai: Installing Solaris SPARC Agent Software Using Self Update in Offline Mode
  • Oracle 11g to 19c Upgrade: Block Change Tracking and Level 0 Backup
  • Symptoms
  • Cause
  • Solution — Step-by-Step Fix
    • 1. Connect as SYSDBA
    • 2. Shutdown the database gracefully
  • 3. Start in UPGRADE mode
    • 4. Re-run Oracle catalog and procedural scripts
    • 5. Restart normally
  • Verification
  • Best Practices to Prevent Recurrence
  • Final Thoughts

Overview

If you’ve ever encountered the dreaded ORA-04063 and ORA-00904 errors when querying the DBA_REGISTRY view in your Oracle Database, you’re not alone.
These errors typically indicate corruption or invalidation within the SYS.DBA_REGISTRY view or the underlying DBMS_REGISTRY package — both essential components for tracking installed database components.

This issue can appear in Oracle Database versions 10.2.0.1 through 11.2.0.4, and may also impact Oracle Cloud and Exadata environments.

Related posts

Oracle Enterprise Manager 24ai: Installing Solaris SPARC Agent Software Using Self Update in Offline Mode

Oracle Enterprise Manager 24ai: Installing Solaris SPARC Agent Software Using Self Update in Offline Mode

October 13, 2026
block chain tracking

Oracle 11g to 19c Upgrade: Block Change Tracking and Level 0 Backup

October 2, 2026

Symptoms

When querying DBA_REGISTRY, you may see the following error message:

SQL> SELECT * FROM dba_registry;

ORA-04063: View "SYS.DBA_REGISTRY" has errors

Attempting to recompile the view results in:

OWNER           NAME             TYPE   SEQUENCE  LINE  POSITION
--------------- ---------------- ------ -------- ------ --------
SYS             DBA_REGISTRY     VIEW   1         0     0

ORA-00904: "DBMS_REGISTRY"."SCHEMA_LIST_STRING": invalid identifier

This clearly points to a missing or invalid object inside the DBMS_REGISTRY package.


Cause

The root cause is that the DBA_REGISTRY view has become invalid.
When Oracle attempts to reference DBMS_REGISTRY.SCHEMA_LIST_STRING during compilation, it fails because the procedure or function no longer exists or is corrupted.

This can happen due to:

  • Interrupted patch or upgrade processes
  • Incomplete database installation scripts
  • Invalid objects after a failed catalog or catproc execution
  • Missing components in the SYS schema

Solution — Step-by-Step Fix

The simplest and most reliable fix is to recreate the DBMS_REGISTRY package and the DBA_REGISTRY view using Oracle’s standard catalog scripts.

Follow these steps carefully:

1. Connect as SYSDBA

sqlplus / as sysdba

2. Shutdown the database gracefully

SHUTDOWN IMMEDIATE;

3. Start in UPGRADE mode

STARTUP UPGRADE;

4. Re-run Oracle catalog and procedural scripts

These scripts rebuild system views, PL/SQL packages, and registry-related metadata.

@$ORACLE_HOME/rdbms/admin/catalog.sql
@$ORACLE_HOME/rdbms/admin/catproc.sql
@$ORACLE_HOME/rdbms/admin/utlrp.sql
  • catalog.sql → recreates data dictionary views.
  • catproc.sql → recompiles PL/SQL packages (including DBMS_REGISTRY).
  • utlrp.sql → recompiles all invalid objects in the database.

5. Restart normally

SHUTDOWN IMMEDIATE;
STARTUP;

Once restarted, verify that the issue has been resolved:

SELECT * FROM dba_registry;

The query should now return all registered components without errors.


Verification

You can confirm the registry’s health by running:

SELECT COMP_ID, COMP_NAME, STATUS, VERSION FROM dba_registry;

If all components show VALID status — congratulations, your database registry is back in shape!


Best Practices to Prevent Recurrence

  • Always run catalog and catproc scripts after a failed or partial upgrade.
  • Ensure $ORACLE_HOME environment variables are correctly set before upgrades.
  • Use utlrp.sql after patching or running datapatch.
  • Regularly check for invalid objects using:
SELECT object_name, object_type FROM dba_objects WHERE status = 'INVALID';

Final Thoughts

The DBA_REGISTRY view plays a crucial role in Oracle Database maintenance, as it tracks installed components like XML DB, Oracle Text, Spatial, and more.
When it becomes invalid, it often signals deeper data dictionary issues — so resolving it promptly helps ensure database integrity and smooth patch management.

By following the steps above, you’ll not only resolve the ORA-04063 and ORA-00904 errors but also restore your Oracle registry to a clean, valid state.

Tags: ORA-04063 ORA-00904SYS.DBA_REGISTRY
Previous Post

ORA-04031: Unable to Allocate Shared Memory – Causes, Fixes, and Prevention (Oracle DBA Guide)

Next Post

How to Fix Broken Data Guard Log Shipping (Step-by-Step Oracle DBA Guide)

Next Post
How to Fix Broken Data Guard Log Shipping – Oracle DBA Step-by-Step Guide

How to Fix Broken Data Guard Log Shipping (Step-by-Step Oracle DBA Guide)

Comments 5

  1. Pingback: How to Fix Broken Data Guard Log Shipping – Oracle DBA Step-by-Step Guide
  2. Pingback: ORA-28000 The Account Is Locked – Why It Happens and How to Fix
  3. Pingback: ORA-01555 Snapshot Too Old – Deep Dive into Undo and Query Consistency
  4. Pingback: ORA-04030: Out of Process Memory in PGA – Oracle Memory Fix Guide
  5. Pingback: Oracle Grid Plug and Play (GPnP) Architecture Explained for DBAs

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

POPULAR NEWS

  • Oracle Patch 38632161: Step-by-Step Guide to Upgrade Oracle 19c to Release Update 19.30

    Oracle Patch 38632161: Step-by-Step Guide to Upgrade Oracle 19c to Release Update 19.30

    0 shares
    Share 0 Tweet 0
  • How To Download And Install The Latest OPatch

    0 shares
    Share 0 Tweet 0
  • Oracle Database 19.32 Release Update (RU) Patching Guide – Patch 39472050

    0 shares
    Share 0 Tweet 0
  • How to Install Oracle 19c Database on Red Hat Enterprise Linux 9

    0 shares
    Share 0 Tweet 0
  • Installing Oracle Database 26AI on Red Hat Enterprise Linux 9

    0 shares
    Share 0 Tweet 0
  • About Us
  • Contact

© 2026 DBAInsight - Smarter Databases. Sharper Insights. DBAInsight.

No Result
View All Result
  • Home
  • Cloud & Modern DBs
  • Guides
  • Cloud Technology
  • Case Studies
  • Troubleshooting
  • Training & Certification

© 2026 DBAInsight - Smarter Databases. Sharper Insights. DBAInsight.

Add as a preferred source on Google
Add as preferred source on Google