Unterbrechen Sie die Replikation für einen bestimmten Zeitraum (M), starten Sie sie dann neu und beobachten Sie, wie lange es dauert, bis der Slave das gleiche Niveau wie der Master erreicht (N).
Replikationskapazität=N:M
Es wird empfohlen, die Kapazität bei mehr als dem Dreifachen, also 1:3, zu halten
1) Die meisten Replikationsfehler werden durch Protokollfehler verursacht.
2) Sowohl das Hauptprotokoll als auch das Relay-Protokoll sind möglicherweise falsch:
#mysqlbinlog MASTER_BINLOG_FILE > /dev/null #mysqlbinlog SLAVE_BINLOG_FILE > /dev/null
1) Viele Probleme können Protokollfehler verursachen . Manchmal gibt es möglicherweise keine Fehler im Protokoll selbst, aber beim SQL-Parsen treten Fehler auf (z. B. sind die Master-Slave-Daten von Natur aus inkonsistent). Sie können Protokollfehler manuell überspringen, dies kann jedoch zu Inkonsistenzen zwischen Master- und Slave-Daten führen.
2) Wenn es sich um einen Hauptprotokollfehler handelt, kann er auf dem Slave ausgeführt werden (bei mehreren Fehlern kann er mehrmals ausgeführt werden).
mysql> stop slave; mysql> set global sql_slave_skip_counter=1; mysql> start slave;
3) Wenn im Relay-Protokoll ein Fehler auftritt, können Sie den Replikationsstatus über den Befehl „show Slave Status G“ auf dem Slave überprüfen und das Fehlerprotokoll basierend auf den Protokollinformationen überspringen:
mysql> stop slave; mysql> charge master to -> master_log_file='<Relay_Master_Log_file>', -> master_log_pos=<Exec_Master_Log_Pos>; mysql> start slave;
4) Wenn Replcation im GTIDs-Modus funktioniert, benötigen Sie
mysql> stop slave; mysql> set gtid_next='uuid:nexti_d'; mysql> begin; mysql> commit; mysql> set gtid_next='automatic'; mysql> start slave;
Hinweis: uuid:nextid zum Beispiel: '0470a4fd-93d1-11e3-86bf -4ec905bea80f:17'.
1. MySQL 5.6 beginnt mit der Unterstützung der Multithread-Binärprotokollübertragung.
2. Kann nur im GTIDs-Modus arbeiten.
3. Nur Vorgänge, die in verschiedenen Bibliotheken ausgeführt werden, können die Multithread-Übertragung verwenden. Operationen an verschiedenen Tabellen unter derselben Bibliothek können weiterhin nur in einem einzigen Thread übertragen werden.
#vi /etc/my.cnf [mysqld] slave_parallel-workers=N (默认值为0,不开启)
Andere Befehle:
mysql> set sql_log_bin=OFF; (关闭二进制日志) mysql> set sql_log_bin=ON; (开启二进制日志)
Das obige ist der detaillierte Inhalt vonMySQL – Detaillierte Erläuterung der Kapazität der Replikation, Fehlerbehebung und Multithread-Binärprotokollübertragung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!