Hintergrund In diesem Artikel wird hauptsächlich getestet, ob die Update-Anweisung, die mit den Originaldaten identisch (d. h. unverändert) ist, in MySQL erneut ausgeführt wird, wenn MySQL die Update-Anweisung ausführt. Testumgebung
binlog_format ist ROW Parameter root@localhost: (keine) 04:53:15> Variablen wie „binlog_row_image“ anzeigen; +------------------+--------+ | Variablenname | Wert | +------------------+--------+ | binlog_row_image | VOLL | +------------------+--------+ 1 Zeile im Satz (0,00 Sek.) root@localhost: (keine) 04:53:49> Variablen wie „binlog_format“ anzeigen; +---------------+-------+ | Variablenname | Wert | +---------------+-------+ | binlog_format | REIHE | +---------------+-------+ 1 Zeile im Satz (0,00 Sek.) root@localhost: Test 05:15:14> Variablen wie „transaction_isolation“ anzeigen; +----------------------+-----------------+ | Variablenname | Wert | +----------------------+-----------------+ | Transaktionsisolierung | WIEDERHOLBARES LESEN | +----------------------+-----------------+ 1 Zeile im Satz (0,00 Sek.) Testschritte Sitzung1 root@localhost: Test 04:49:48> Beginn; Abfrage OK, 0 Zeilen betroffen (0,00 Sek.) root@localhost: Test 04:49:52> Auswahl * aus Test, wobei ID = 1; +----+------+------+------+ | ID | Seite | Mittel | Name | +----+------+------+------+ | 1 | 999 | 871 | NW | +----+------+------+------+ 1 Zeile im Satz (0,00 Sek.) root@localhost : (keine) 04:54:03> Engine-InnoDB-Status anzeigen\G Master-Status anzeigen\G ... --- PROTOKOLL --- Protokollsequenznummer 12090390 Protokoll gelöscht bis 12090390 Seiten bis 12090390 geleert Letzter Kontrollpunkt bei 12090381 0 ausstehende Log-Leervorgänge, 0 ausstehende CHKP-Schreibvorgänge 33 Log-E/A's erledigt, 0,00 Log-E/A's/Sekunde *************************** 1. Reihe *************************** Datei:mysql-bin.000001 Position: 154 Binlog_Do_DB: Binlog_Ignore_DB: Ausgeführtes_Gtid_Set: 1 Zeile im Satz (0,00 Sek.) Sitzung2 root@localhost: Test 04:47:45> Testsatz aktualisieren sid=55, wobei id =1; Abfrage OK, 1 Zeile betroffen (0,01 Sek.) Übereinstimmende Zeilen: 1 Geändert: 1 Warnungen: 0 root@localhost : (keine) 04:54:03> Engine-InnoDB-Status anzeigen\G Master-Status anzeigen\G ... --- PROTOKOLL --- Protokollsequenznummer 12091486 Protokoll gelöscht bis 12091486 Seiten bis 12091486 geleert Letzter Kontrollpunkt bei 12091477 0 ausstehende Log-Leervorgänge, 0 ausstehende CHKP-Schreibvorgänge 39 Log-E/A's erledigt, 0,00 Log-E/A's/Sekunde *************************** 1. Reihe *************************** Datei:mysql-bin.000001 Position: 500 Binlog_Do_DB: Binlog_Ignore_DB: Ausgeführtes_Gtid_Set: 8392d215-4928-11e9-a751-0242ac110002:1 1 Zeile im Satz (0,00 Sek.) Sitzung1 root@localhost: Test 04:49:57> Testsatz aktualisieren sid=55, wobei id =1; Abfrage OK, 0 Zeilen betroffen (0,00 Sek.) Übereinstimmende Zeilen: 1 Geändert: 0 Warnungen: 0 root@localhost : (keine) 04:54:03> Engine-InnoDB-Status anzeigen\G Master-Status anzeigen\G ... --- PROTOKOLL --- Protokollsequenznummer 12091486 Protokoll gelöscht bis 12091486 Seiten bis 12091486 geleert Letzter Kontrollpunkt bei 12091477 0 ausstehende Log-Leervorgänge, 0 ausstehende CHKP-Schreibvorgänge 39 Log-E/A's erledigt, 0,00 Log-E/A's/Sekunde *************************** 1. Reihe *************************** Datei:mysql-bin.000001 Position: 500 Binlog_Do_DB: Binlog_Ignore_DB: Ausgeführtes_Gtid_Set: 8392d215-4928-11e9-a751-0242ac110002:1 1 Zeile im Satz (0,00 Sek.) root@localhost: Test 04:52:05> Auswahl * aus Test, wobei ID = 1; +----+------+------+------+ | ID | Seite | Mittel | Name | +----+------+------+------+ | 1 | 999 | 871 | NW | +----+------+------+------+ 1 Zeile im Satz (0,00 Sek.) root@localhost: Test 04:52:42> Commit; Abfrage OK, 0 Zeilen betroffen (0,00 Sek.) root@localhost: Test 04:52:52> Auswahl * aus Test, wobei ID = 1; +----+------+------+------+ | ID | Seite | Mittel | Name | +----+------+------+------+ | 1 | 55 | 871 | NW | +----+------+------+------+ 1 Zeile im Satz (0,00 Sek.) Zusammenfassen Wenn binlog_format ist STATEMENT Parameter root@localhost: (keine) 04:53:15> Variablen wie „binlog_row_image“ anzeigen; +------------------+--------+ | Variablenname | Wert | +------------------+--------+ | binlog_row_image | VOLL | +------------------+--------+ 1 Zeile im Satz (0,00 Sek.) root@localhost: (keine) 05:16:08> Variablen wie „binlog_format“ anzeigen; +---------------+-----------+ | Variablenname | Wert | +---------------+-----------+ | binlog_format | ANWEISUNG | +---------------+-----------+ 1 Zeile im Satz (0,00 Sek.) root@localhost: Test 05:15:14> Variablen wie „transaction_isolation“ anzeigen; +----------------------+-----------------+ | Variablenname | Wert | +----------------------+-----------------+ | Transaktionsisolierung | WIEDERHOLBARES LESEN | +----------------------+-----------------+ 1 Zeile im Satz (0,00 Sek.) Testschritte Sitzung1 root@localhost: Test 05:16:42> Beginn; Abfrage OK, 0 Zeilen betroffen (0,00 Sek.) root@localhost: Test 05:16:44> Auswahl * aus Test, wobei ID = 1; +----+------+------+------+ | ID | Seite | Mittel | Name | +----+------+------+------+ | 1 | 111 | 871 | NW | +----+------+------+------+ 1 Zeile im Satz (0,00 Sek.) root@localhost : (keine) 05:16:51> Engine-InnoDB-Status anzeigen\G Master-Status anzeigen\G ... --- PROTOKOLL --- Protokollsequenznummer 12092582 Protokoll gelöscht bis 12092582 Seiten bis 12092582 geleert Letzter Kontrollpunkt bei 12092573 0 ausstehende Log-Leervorgänge, 0 ausstehende CHKP-Schreibvorgänge 45 Log-E/A's erledigt, 0,00 Log-E/A's/Sekunde *************************** 1. Reihe *************************** Datei:mysql-bin.000001 Position: 154 Binlog_Do_DB: Binlog_Ignore_DB: Ausgeführtes_Gtid_Set: 1 Zeile im Satz (0,00 Sek.) Sitzung2 root@localhost: Test 05:18:30> Testsatz aktualisieren sid=999, wobei id =1; Abfrage OK, 1 Zeile betroffen (0,00 Sek.) Übereinstimmende Zeilen: 1 Geändert: 1 Warnungen: 0 root@localhost : (keine) 05:18:47> Engine-InnoDB-Status anzeigen\G Master-Status anzeigen\G ... --- PROTOKOLL --- Protokollsequenznummer 12093678 Protokoll gelöscht bis 12093678 Seiten bis 12093678 geleert Letzter Kontrollpunkt bei 12093669 0 ausstehende Log-Leervorgänge, 0 ausstehende CHKP-Schreibvorgänge 51 Log-E/A's erledigt, 0,14 Log-E/A's/Sekunde *************************** 1. Reihe *************************** Datei:mysql-bin.000001 Position: 438 Binlog_Do_DB: Binlog_Ignore_DB: Ausgeführtes_Gtid_Set: 8392d215-4928-11e9-a751-0242ac110002:1 1 Zeile im Satz (0,00 Sek.) Sitzung1 root@localhost: Test 05:16:47> Testsatz aktualisieren sid=999, wobei id =1; Abfrage OK, 0 Zeilen betroffen (0,00 Sek.) Übereinstimmende Zeilen: 1 Geändert: 0 Warnungen: 0 root@localhost : (keine) 05:20:03> Engine-InnoDB-Status anzeigen\G Master-Status anzeigen\G ... --- PROTOKOLL --- Protokollsequenznummer 12094504 Protokoll gelöscht bis 12094504 Seiten bis 12094504 geleert Letzter Kontrollpunkt bei 12094495 0 ausstehende Log-Leervorgänge, 0 ausstehende CHKP-Schreibvorgänge 56 Log-E/A's erledigt, 0,00 Log-E/A's/Sekunde *************************** 1. Reihe *************************** Datei:mysql-bin.000001 Position: 438 Binlog_Do_DB: Binlog_Ignore_DB: Ausgeführtes_Gtid_Set: 8392d215-4928-11e9-a751-0242ac110002:1 1 Zeile im Satz (0,00 Sek.) root@localhost: Test 05:19:33> Auswahl * aus Test, wobei ID = 1; +----+------+------+------+ | ID | Seite | Mittel | Name | +----+------+------+------+ | 1 | 999 | 871 | NW | +----+------+------+------+ 1 Zeile im Satz (0,00 Sek.) root@localhost: Test 05:20:44> Commit; Abfrage OK, 0 Zeilen betroffen (0,01 Sek.) root@localhost: Test 05:20:57> Auswahl * aus Test, wobei ID = 1; +----+------+------+------+ | ID | Seite | Mittel | Name | +----+------+------+------+ | 1 | 999 | 871 | NW | +----+------+------+------+ 1 Zeile im Satz (0,00 Sek.) Zusammenfassen Wenn binlog_format=statement und binlog_row_image=FULL ist, führt InnoDB die Aktualisierungsanweisung sorgfältig aus, d. h. die Operation „Ändern Sie diesen Wert auf (1.999)“, sperrt, was gesperrt werden muss, und aktualisiert, was aktualisiert werden muss. Das ist alles für diesen Artikel. Ich hoffe, dass der Inhalt dieses Artikels für Ihr Studium oder Ihre Arbeit von gewissem Referenzwert ist. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Vue realisiert Web-Online-Chat-Funktion
>>: So legen Sie die Umgebungsvariable PATH im Linux-System fest (3 Methoden)
Inhaltsverzeichnis Was ist ref So verwenden Sie r...
Inhaltsverzeichnis EffectList-Sammlung Effektlist...
Die Standardvorlagenmethode ähnelt vue2 und verwe...
{ {}} Holen Sie sich den Wert, der ursprüngliche ...
Das Ziel dieses Dokuments ist es, die JSON-Serial...
Die goldene Regel Unabhängig davon, wie viele Per...
Dieser Artikel enthält die Zusammenfassung des JS...
Dieser Artikel stellt die Blue-Green-Bereitstellu...
Inhaltsverzeichnis 1. Das Konzept schnell erkenne...
Inhaltsverzeichnis Anforderungsbeschreibung: Anfo...
Ein Meister sagte einmal, man müsse die Datenbank...
Inhaltsverzeichnis 1. Verwenden Sie JavaScript, u...
Beim Kapseln von Vue-Komponenten werde ich weiter...
Mysql mehrere unabhängige Tabellen Abfragedaten u...
HTML + CSS + JS imitieren den Helligkeitsanpassun...