1. Einleitung Vor ein paar Tagen fragte mich ein Entwicklungskollege, ob das Aktualisieren eines Felds auf denselben Wert ein Binlog aufzeichnen würde. Ich antwortete, dass dies nicht der Fall sei. Genau genommen ist diese Antwort ungenau, da zwischen verschiedenen Szenarien unterschieden werden muss. Ob Aktualisierungsanweisungen im Binärprotokoll aufgezeichnet werden, hängt von der Einstellung des Binärprotokollformats ab. Übung macht in bestimmten Situationen den Meister. Zweiter Test 2.1 binlog_format ist ROW-Modus 2.2 binlog_format ist im STATEMENT-Modus Analysieren Sie den Binärprotokollinhalt und zeichnen Sie die Update-Anweisung vollständig auf. 2.2 binlog_format ist im MIXED-Modus Wenn row_format gemischt oder Anweisungsformat ist, ändert sich die Größe des Binärprotokolls. Unabhängig davon, ob die Daten tatsächlich aktualisiert werden, zeichnet MySQL das ausgeführte SQL im Binärprotokoll auf. Drei Schlussfolgerungen Im zeilenbasierten Modus gleicht die Serverebene den zu aktualisierenden Datensatz ab und stellt fest, dass der neue Wert mit dem alten Wert übereinstimmt. Der Datensatz wird nicht aktualisiert und die Ebene kehrt direkt zurück, ohne das Binärprotokoll aufzuzeichnen. Basierend auf der Anweisung oder dem gemischten Format führt MySQL die Aktualisierungsanweisung aus und zeichnet die Aktualisierungsanweisung im Binärprotokoll auf. Warum zeichnen also Anweisungen und gemischte Anweisungen die komplette SQL-Anweisung auf? Dies werde ich im nächsten Artikel erläutern, da ich den Quellcode parsen muss und es mir bisher nicht gelungen ist, die MySQL-Debugging-Umgebung mit Clion zu kompilieren. Das obige Beispiel dient zur Überprüfung, ob das Feld MySQL|update die Details des Binärprotokolls aufzeichnet, wenn es denselben Wert hat. Weitere Informationen zum MySQL-Updatefeld finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
>>: Pull-Down-Aktualisierung und Pull-Up-Ladekomponenten basierend auf Vue-Kapselung
Sehen Sie sich die 100 höchsten Punktzahlen der S...
Vorwort Wenn CSS die Grundfertigkeit der Front-En...
Im Allgemeinen bietet MySQL standardmäßig eine Vi...
Heute habe ich den Mauszoom-Effekt auf der Vorders...
Detailliertes Beispiel zum Entfernen doppelter Da...
Gewerkschaftsexekution Verwenden Sie zur Vereinfa...
Die Informationen auf Baidu sind so vielfältig, d...
Konfiguration Vorwort Projektaufbau: basierend au...
In diesem Artikel wird der spezifische Code von j...
Ich weiß nicht, ob es daran liegt, dass die Binär...
js interessanter Countdown-Fall. Zu Ihrer Informa...
1. Überlauf Überlauf ist Überlauf (Container). We...
Ergebnis:Implementierungscode html <ul Klasse=...
So ermitteln Sie, ob eine Variable in der Shell l...
Vue-Version, kopiere sie in die Datei und verwend...