Oracle Database / Sessions, Locks & Transactions
ORA-00054: investigate a resource busy during DDL or NOWAIT access
A schema change or NOWAIT operation may fail because another session owns a conflicting lock. Identify the operation and object before rescheduling.
Environment and inputs: Oracle Database 19c baseline · SQL*Plus-compatible SQL unless RMAN, DGMGRL, ADRCI or a host shell is specified. Check release, patch level, edition and container first.
Start with this diagnostic
Use the stated SQL, RMAN, DGMGRL or host shell and replace sample names with approved targets. DBA and V$ views need authorized catalog access in the correct container. Do not grant broad privileges for an example.
SELECT session_id, owner, name, type, mode_held, mode_requested FROM dba_ddl_locks WHERE owner = 'APP_OWNER';
Read the result
The listing describes DDL locks visible to the DBA. Absence here does not rule out a DML lock or a lock that already disappeared.
Resolve and verify
Correlate the exact object and active transactions. Use a planned deployment window or bounded approved wait rather than repeatedly forcing the change.
Operational precautions
Do not kill every session using the schema. DDL can commit implicitly and needs a separate release plan.