Kapitel 6. Transaktionen und Sperren

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Die Verwendung von Sperren zur Transaktionsisolierung ist ein Grundpfeiler von SQL-Datenbanken - aber ist auch ein Bereich, der für viel Verwirrung sorgen kann, vor allem bei Neueinsteigern. Entwickler denken oft, dass Sperren ein Datenbankthema sind und in den Bereich der DBAs gehören. Die DBAs wiederum sind der Meinung, dass es sich um ein Anwendungsproblem handelt und folglich die Entwickler dafür verantwortlich sind. In diesem Kapitel wird geklärt, was in Situationen passiert, in denen verschiedene Prozesse gleichzeitig versuchen, in dieselbe Zeile zu schreiben. Außerdem wird das Verhalten von Leseabfragen innerhalb einer Transaktion mit den verschiedenen Isolationsebenen in MySQL beleuchtet.

Definieren wir zunächst die wichtigsten Begriffe. Eine Transaktion ist eine Operation, die (mit einer oder mehreren SQL-Anweisungen) in einer Datenbank als eine logische Arbeitseinheit durchgeführt wird. Alle Änderungen der SQL-Anweisungen in einer Transaktion werden entweder bestätigt (in die Datenbank übernommen) oder rückgängig gemacht (aus der Datenbank entfernt), und zwar als Einheit, niemals nur teilweise. Eine Datenbanktransaktion muss atomar, konsistent, isoliert und dauerhaft sein (das berühmte Akronym ACID).

Sperren sind Mechanismen, mit denen die Integrität der in der Datenbank gespeicherten Daten sichergestellt ...

Get MySQL lernen, 2. Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.