Heim >Datenbank >MySQL-Tutorial >So stellen Sie MySQL-Daten über Protokolldateien wieder her
Es gibt zwei Möglichkeiten, die Start- und Endposition zu bestimmen: Eine besteht darin, die Zeit als Start und Ende zu verwenden, die andere darin, die Position des Protokolls als zu verwenden die Start- und Endposition
2.1, verwenden Sie den Zeitbereich
mysql> show master status; +------------------+-----------+ | Log_name | File_size | +------------------+-----------+ | binlog.000001 | 967 | | binlog.000002 | 965 | +------------------+-----------+
Bestimmen Sie dann den Zeitpunkt des letzte Sicherung. Wenn Sie den Zeitpunkt der letzten Sicherung nicht im Protokoll finden können, können Sie einen Zeitpunkt eingeben, von dem Sie wissen, dass er kleiner als der vorherige in Ihrem Speicher ist. Den Zeitpunkt der Sicherung verwenden Sie Positionsbereich: Verwenden Sie den folgenden Befehl, um die Position des Protokollereignisses anzuzeigen. * vom Server generiert */ /* xid=11790691 */
Das heißt, die gelöschte Position ist 820474948oder ersetzen Sie mit dem obigen Befehl das Schlüsselwort, um den Positionspunkt der letzten Sicherung zu finden3# at 131708213 #210610 11:27:01 server id 1 end_log_pos 131708311 CRC32 0x0fc755e2 Table_map: `loongwind_base`.`xxxx` mapped to number 139 # at 131708311 #210610 11:27:01 server id 1 end_log_pos 131708411 CRC32 0xa91616b9 Write_rows: table id 139 flags: STMT_END_F BINLOG ' BffBYBMBAAAAYgAAAJe12QcAAIsAAAAAAAEADmR4bWhfYmFzZV9oenN5ABpkeF9zeV9hc3NldHNf ZXh0ZW5kc19jb3B5MQAICAgIDwgSCBIEAAgAAPgBAQACA/z/AOJVxw8= BffBYB4BAAAAZAAAAPu12QcAAIsAAAAAAAMAAgAI/wDRAwAAm1M8AUIAAADRUjwBCgAAAFYL5gAM AOWFrOWuieacuuWFs7EBAADbwZkAmama6E+xAQAA28GZAJmpmuhPuRYWqQ== '/*!*/;
wobei dxmh_base_hzsy der Datenbankname ist
3.2 Wiederherstellung nach Position
mysql -uroot -p'password' -e "show binlog events in 'binlog.000002'"|grep -i 'DROP TABLE'
Wenn Sie die Startzeit oder Startposition wirklich nicht finden können, müssen Sie nicht --start-datetime oder schreiben --start-position, also verwenden Sie dies Die Protokolldatei wird vom Anfang bis zum Ende wiederhergestellt. Um Konflikte mit vorhandenen Daten zu vermeiden, müssen Sie -f hinzufügen, dh erzwingen, Fehler zu überspringen und die Ausführung fortzusetzen.
Das obige ist der detaillierte Inhalt vonSo stellen Sie MySQL-Daten über Protokolldateien wieder her. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!