Wenn die Tabelle schon seit längerer Zeit gelöscht wurde, können Sie das Binärprotokoll von MySQL verwenden, um die Daten wiederherzustellen. Dies erfordert Folgendes: Binäre Protokollierung ist aktiviert.Schnelle Wiederherstellung gerade gelöschter Tabellen: Verwenden Sie die Befehle FLUSH LOGS und ALTER TABLE. Tiefgreifende Wiederherstellung längst gelöschter Tabellen: Bedingungen erfüllen (Binärprotokoll aktiviert, Ereignisprotokollierung), Speicherort des Ereignisprotokolls bestimmen, Protokoll sichern, SQL-Datei bearbeiten, SQL-Datei anwenden. So stellen Sie gerade gelöschte Tabellendaten in MySQL wieder her
Ereignisereignisse werden in binären Protokolldateien aufgezeichnet.
Kopiererlaubnis haben (SUPER oder REPLICATION CLIENT).Schritte
Bestimmen Sie den Speicherort des binären Ereignisprotokolls:
Verwenden Sie den BefehlSHOW BINARY LOGS
, um die binäre Protokolldatei und den Speicherort zu finden, die das Ereignis enthält.
mysqlbinlog
, um das Binärprotokoll in eine SQL-Datei zu sichern: <code>mysql> FLUSH LOGS; mysql> FLUSH TABLES WITH READ LOCK; mysql> ALTER TABLE table_name RENAME TO table_name_backup;</code>
DROP TABLE table_name
-Anweisung und ersetzen Sie sie durch eine CREATE TABLE table_name
-Anweisung. Wenden Sie die SQL-Datei an:
<code>mysqlbinlog --start-position=start_position --stop-position=stop_position binary_log_file > dump.sql</code>
SHOW BINARY LOGS
命令找到包含事件的二进制日志文件和位置。转储二进制日志:使用 mysqlbinlog
工具将二进制日志转储到 SQL 文件中:
<code>mysql -u root -p your_db < dump.sql</code>
DROP TABLE table_name
语句,并将其替换为 CREATE TABLE table_name
Die wiederhergestellten Daten enthalten möglicherweise keine Änderungen, die seit dem Löschen der Tabelle vorgenommen wurden.
Bevor Sie Wiederherstellungsvorgänge durchführen, stellen Sie bitte sicher, dass Sie Ihre Datenbank gesichert haben.
Das obige ist der detaillierte Inhalt vonSo stellen Sie neu gelöschte Tabellendaten in MySQL wieder her. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!