Heim  >  Artikel  >  Datenbank  >  Welche Probleme können durch gleichzeitige Datenbankoperationen verursacht werden?

Welche Probleme können durch gleichzeitige Datenbankoperationen verursacht werden?

王林
王林Original
2020-06-20 09:32:218719Durchsuche

Welche Probleme können durch gleichzeitige Datenbankoperationen verursacht werden?

Gleichzeitige Vorgänge der Datenbank führen normalerweise zu verlorenen Aktualisierungsproblemen, inkonsistenten Analyseproblemen und Leseproblemen bei „schmutzigen Daten“.

Einführung in relevante Wissenspunkte:

Transaktion ist die Grundeinheit der Parallelitätskontrolle.

(empfohlene verwandte Tutorials: MySQL-Tutorial)

Dateninkonsistenz durch gleichzeitige Vorgänge

1. Verlorene Änderungen (Verloren Update)

2. Nicht wiederholbares Lesen (nicht wiederholbares Lesen)

3. Phantom-Lesen (Phantom-Lesen)

4. Lesen)

Schauen wir sie uns separat an:

Verlorene Änderungen: Zwei Transaktionen T-1 und T-2 lesen dieselben Daten und ändern sie sowie das Übermittlungsergebnis von T-2 zerstörtes T. Das Ergebnis der Übermittlung von -1 führt dazu, dass die Änderungen von T-1 verloren gehen. (Änderungs-Änderungs-Konflikt)

Nicht wiederholbares Lesen: Transaktion 1 liest bestimmte Daten und Transaktion 2 ändert sie; wenn Transaktion 1 die Daten erneut liest, erhält sie einen anderen Wert als beim vorherigen Mal (Lesen -Update). Konflikt)

Phantom-Lesen: Transaktion T-1 liest bestimmte Datensätze aus der Datenbank gemäß bestimmten Bedingungen, und Transaktion T-2 löscht (fügt) einige der Datensätze ein, wenn T-1 beim Lesen von Daten erneut drückt Unter den gleichen Bedingungen wurde festgestellt, dass einige Aufzeichnungen auf mysteriöse Weise verschwanden (auftauchten). (Read-Insert/Delete-Konflikt)

Schmutzige Daten: Transaktion T-1 ändert bestimmte Daten und schreibt sie zurück auf die Festplatte, nachdem Transaktion T-2 dieselben Daten gelesen hat, T-1 aus irgendeinem Grund T-1 wird widerrufen, die geänderten Daten werden auf ihren ursprünglichen Wert zurückgesetzt und die von T-2 gelesenen Daten stimmen nicht mit den Daten in der Datenbank überein. Die von T-2 gelesenen Daten sind „schmutzige“ Daten, das heißt falsch Daten. (Ändern – Konflikt lesen)

Dateninkonsistenz: Gleichzeitige Vorgänge zerstören die Isolation von Transaktionen

Der Zweck der Parallelitätskontrolle

muss verwendet werden Diese Methode plant gleichzeitige Vorgänge korrekt, sodass die Ausführung einer Benutzertransaktion nicht durch andere Transaktionen beeinträchtigt wird, wodurch Dateninkonsistenzen vermieden werden.

Das obige ist der detaillierte Inhalt vonWelche Probleme können durch gleichzeitige Datenbankoperationen verursacht werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn