Anfang des Inhaltsbereichs

 Sperren 

Das Datenbanksystem lässt konkurrierende Transaktionen auf den gleichen Datenbankobjekten zu. Um dabei eine Synchronisation der parallelen Prozesse und eine Isolation einzelner Transaktionen zu gewährleisten, sind Sperren (Locks) erforderlich.

·        Das Sperrverhalten der Datenbank hängt unter anderem von der Art der Sperre ab.

·        Sperren sind auf Zeilen, Tabellen oder den ganzen Datenbankkatalog möglich.

Wenn in einer Tabelle von einer Transaktion zu viele Zeilensperren angefordert werden, dann versucht das Datenbanksystem, dafür eine Tabellensperre zu erhalten. Wenn dabei Kollisionen mit anderen Sperren auftreten, dann werden jedoch weiter Zeilensperren angefordert. Die Grenze, ab der das Datenbanksystem versucht, Zeilensperren in eine Tabellensperre zu verwandeln, hängt vom allgemeinen Datenbankparameter MAXLOCKS ab.

·        Sperren können implizit oder explizit angefordert oder freigegeben werden.

Je mehr Sperren gesetzt werden und je länger die Sperren erhalten bleiben, desto weniger Parallelität ist im Datenbankbetrieb möglich. Sie sollten daher darauf achten, dass nur unbedingt notwendige Sperren gesetzt werden und dass gesetzte Sperren möglichst frühzeitig wieder freigegeben werden.

·        Mit dem speziellen Datenbankparameter REQUEST_TIMEOUT lässt sich die Wartezeit für Benutzer auf die Freigabe einer Sperre begrenzen.

Sperren und Sperranforderungen anzeigen

Sie können zum Beispiel mit dem Database Manager GUI Informationen über die aktuellen Sperren und Sperranforderungen erhalten.

Database Manager GUI, Datenbankaktivitäten anzeigen

In SAP-Systemen verwenden Sie zum Anzeigen von Datenbankinformationen den Datenbankassistenten oder für liveCache-Instanzen den liveCache-Assistenten.

Außerdem enthält die Systemtabelle LOCKS Informationen zu Sperren.

Ende des Inhaltsbereichs