Heim > Datenbank > MySQL-Tutorial > Einführung in die Verwendung von MySQLs MVCC

Einführung in die Verwendung von MySQLs MVCC

不言
Freigeben: 2019-03-22 11:30:51
nach vorne
4120 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine Einführung in die Verwendung von MySQLs MVCC. Ich hoffe, dass er für Freunde hilfreich ist.

MVCC (Multi-version Concurrency Control)

Funktion: In vielen Fällen können Sperrvorgänge vermieden und der Overhead reduziert werden.

MVCC unter InnoDB

wird implementiert, indem hinter jeder Datensatzzeile zwei versteckte Spalten gespeichert werden, die Erstellungszeit der Zeile und die Ablaufzeit der Zeile (Löschzeit). Die Zeit bezieht sich hier auf die Systemversionsnummer. Jedes Mal, wenn etwas Neues gestartet wird, erhöht sich die Systemversionsnummer automatisch. Die Systemversionsnummer zu Beginn der Transaktion wird als Versionsnummer der Transaktion verwendet, die zum Vergleich mit der Versionsnummer jeder abgefragten Datensatzzeile verwendet wird.

Spezifische Operationen von MVCC unter der Isolationsstufe REPEATABLE READ

SELECT

InnoDB findet nur Datenzeilen, deren Version älter ist als die aktuelle Transaktionsversion (Zeile). Systemversionsnummer

ist entweder undefiniert oder größer als die aktuelle Versionsnummer des Dings. Dadurch wird sichergestellt, dass die von der Transaktion gelesenen Zeilen nicht vor dem Start der Transaktion gelöscht werden.

Nur ​​Datensätze, die die beiden oben genannten Bedingungen erfüllen, können die Abfrageergebnisse zurückgeben.

INSERT

InnoDB speichert die aktuelle Systemversionsnummer als Zeilenversionsnummer für jede neu eingefügte Zeile.

UPDATE

InnoDB fügt eine neue Zeile mit Datensätzen ein, speichert die aktuelle Systemversionsnummer als Zeilenversionsnummer und speichert die aktuelle Systemversionsnummer in der ursprünglichen Zeile als Zeilenlöschungskennung.

LÖSCHEN

InnoDB speichert die aktuelle Systemversionsnummer als Löschkennung für jede gelöschte Zeile.

Dieser Artikel ist hier zu Ende. Weitere spannende Inhalte finden Sie in der Spalte MySQL-Tutorial-Video auf der chinesischen PHP-Website!

Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung von MySQLs MVCC. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage