069 / 58 80 436 10 info@dbaservices.de
ORA-00054 – resource busy and acquire with NOWAIT specified or timeout expired

1.) Texte aus oerr unter Linux

00054, 00000, „resource busy and acquire with NOWAIT specified or timeout expired“

// *Cause: Interested resource is busy.

// *Action: Retry if necessary or increase timeout.

2.) Erklärung

Diese Fehlermeldung tritt auf, wenn die Eigenschaft eines Objektes geändert werden soll, das Objekt jedoch bereits in Benutzung eines anderen Users ist. Das Objekt wurde hier bereits durch einen anderen User gesperrt. Soll z.B. eine Spalte in eine Tabelle eingefügt werden und ist diese Tabelle bereits in Verwendung eines anderen Users, wird diese Fehlermeldung angezeigt. Häufig tritt dieser Fall auch während des Neuaufbaus eines Indexes (rebuild) auf.

3.) Lösungsvorschläge

Ausführen des DDL-Statements in einem Zeitraum, in dem die Last auf dem System sehr gering ist.

Oder die Tabelle wird für die Dauer des DDL-Statements auf read only gesetzt.

SQL> alter table <tablename> read only;

Der Status der Tabelle ist in der View DBA_TABLES protokolliert.

SQL> select table_name, read_only from dba_tables where table_name = ‚ <table_name>‘;

Nach der Ausführung des DDL-Statements ist die Tabelle wieder auf read write zu setzen.

SQL> alter table <tablename> read write;

Hinweis: In Oracle Releases vor 11g muss der komplette Tablespace auf read only gesetzt warden mit

alter tablespace <tablespace_name> read only;

bzw.

alter tablespace <tablespace_name> read write;

Eine weitere Möglichkeit besteht darin, die Wait Option zu setzten. Dies geschieht durch das Setzen den Parameters DDL_LOCK_TIMEOUT auf einen Wert größer 0, da dieser Parameter standardmäßig auf 0 steht, was einem NOWAIT entspricht.

Haben Sie Fragen?

(erforderlich)
Dieses Feld dient zur Validierung und sollte nicht verändert werden.

NEUSTE BEITRÄGE

DBVisit Single Instance Standby for RAC

A few months ago I got the exciting task to create a single instance standby for a RAC. Honestly,I was skeptical about whether it would run properly. Additionaly, the single instance should be usingfilesystem, while the Real Application Clusters is using ASM. Except...

ORA-00936 – missing expression

1.) Texte aus oerr unter Linux 00936, 00000, „missing expression“ // *Cause: // *Action 2.) Erklärung Diese Meldung wird angezeigt, wenn ein Teil der Syntax fehlt. Fehlen z.B. bei einem Select-Statement die Spaltennamen (bzw. * für alle Spalten), so wird diese Meldung...

ORA-06550 – line %s, column %s:\n%s

1.) Texte aus oerr unter Linux 06550, 00000, „line %s, column %s:\n%s“ // *Cause: Usually a PL/SQL compilation error. // *Action:… 2.) Erklärung Es wurde versucht, einen invalid Block oder PL/SQL-Code auszuführen. Dabei ist ein Fehler bei der Kompilierung aufgetreten....