Heim  >  Artikel  >  Datenbank  >  MySQL Advanced (23) vier Hauptmerkmale von Datenbanktransaktionen

MySQL Advanced (23) vier Hauptmerkmale von Datenbanktransaktionen

黄舟
黄舟Original
2017-02-11 10:49:361975Durchsuche

Vier Hauptmerkmale von Datenbanktransaktionen

Atomizität, Konsistenz, Trennung, Haltbarkeit

Atomizität

Die Atomizität von Eine Transaktion bedeutet, dass das in der Transaktion enthaltene Programm als logische Arbeitseinheit der Datenbank dient und alle von ihm durchgeführten Datenänderungsvorgänge entweder ausgeführt oder überhaupt nicht ausgeführt werden. Diese Eigenschaft wird Atomizität genannt.

Die Atomizitätsanforderung einer Transaktion besteht darin, dass eine Transaktion, die als Programm betrachtet werden kann, entweder vollständig oder überhaupt nicht ausgeführt wird. Das heißt, die Operationssequenz der Transaktion wird entweder vollständig auf die Datenbank angewendet oder hat keinerlei Auswirkungen auf die Datenbank. Diese Eigenschaft wird Atomizität genannt.

Wenn der Benutzer Aktualisierungen der Datenbank innerhalb einer Transaktion durchführt, müssen alle Aktualisierungen für die Außenwelt sichtbar sein, andernfalls gibt es möglicherweise überhaupt keine Aktualisierungen. Ersteres besagt, dass die Transaktion festgeschrieben wurde, und letzteres besagt, dass die Transaktion abgebrochen (oder abgebrochen) wurde. Das DBMS muss sicherstellen, dass alle durch erfolgreich festgeschriebene Transaktionen abgeschlossenen Vorgänge vollständig in der Datenbank widergespiegelt werden, während fehlgeschlagene Transaktionen keinerlei Auswirkungen auf die Datenbank haben.

Konsistenz

Transaktionskonsistenz bedeutet, dass die Datenbank vor und nach der Ausführung einer Transaktion in einem konsistenten Zustand sein muss. Diese Eigenschaft wird Transaktionskonsistenz genannt. Eine Datenbank gilt als konsistent, wenn ihr Zustand alle Integritätsbeschränkungen erfüllt.

Konsistenz kümmert sich um den Schutz aller semantischen Einschränkungen in der Datenbank. Befindet sich die Datenbank beispielsweise im Konsistenzstatus S1, wird während der Ausführung der Transaktion davon ausgegangen, dass der Status der Datenbank inkonsistent ist Konsistenzzustand S2.

Trennung

Trennung bedeutet, dass gleichzeitige Transaktionen voneinander isoliert sind. Das heißt, die Vorgänge innerhalb einer Transaktion und die verarbeiteten Daten müssen blockiert werden und können von anderen Transaktionen, die versuchen, sie zu ändern, nicht gesehen werden.

Trennbarkeit ist die vom DBMS bereitgestellte Sicherheitsgarantie gegen Konflikte zwischen gleichzeitigen Transaktionen. DBMS kann durch Sperren unterschiedliche Ebenen der Trennung zwischen gleichzeitig ausgeführten Transaktionen bereitstellen. Wenn es keine Kontrolle über die Ausführung gleichzeitiger Transaktionen gibt, kann die Ausführung mehrerer gleichzeitiger Transaktionen, die dasselbe gemeinsame Objekt manipulieren, zu abnormalen Bedingungen führen.

DBMS kann verschiedene Ebenen der Trennung zwischen gleichzeitig ausgeführten Transaktionen bereitstellen. Es besteht eine umgekehrte Beziehung zwischen dem Grad der Trennung und dem Durchsatz gleichzeitiger Transaktionen. Eine bessere Trennbarkeit von Transaktionen kann zu mehr Konflikten und mehr Transaktionsabbrüchen führen. Abgebrochene Transaktionen verbrauchen Ressourcen, auf die erneut zugegriffen werden muss. Daher erfordert ein DBMS, das ein hohes Maß an Trennung gewährleistet, mehr Overhead.

Dauerhaftigkeit

Dauerhaftigkeit bedeutet, sicherzustellen, dass Aktualisierungen festgeschriebener Transaktionen nicht verloren gehen, wenn ein System- oder Medienfehler auftritt. Das heißt, sobald eine Transaktion festgeschrieben ist, stellt das DBMS sicher, dass die Änderungen an den Daten in der Datenbank dauerhaft sind und jedem Systemausfall standhalten. Die Haltbarkeit hängt also hauptsächlich von der Wiederherstellungsleistung des DBMS ab. Die Haltbarkeit wird durch Datenbanksicherung und -wiederherstellung gewährleistet.

Referenzmaterialien

http://www.php.cn/

Die oben genannten sind die vier wichtigsten Datenbanktransaktionen von MySQL Advanced (zwanzig- 3) Feature-Inhalte. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn).


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