Restaurez rapidement les tables que vous venez de supprimer : utilisez les commandes FLUSH LOGS et ALTER TABLE. Récupération approfondie des tables supprimées depuis longtemps : remplir les conditions (journal binaire activé, journalisation des événements), déterminer l'emplacement du journal des événements, vider le journal, modifier le fichier SQL, appliquer le fichier SQL.
Comment récupérer les données d'une table récemment supprimées dans MySQL
Récupération rapide
Si la table vient d'être supprimée, vous pouvez utiliser la commande suivante pour la récupérer immédiatement :
<code>mysql> FLUSH LOGS; mysql> FLUSH TABLES WITH READ LOCK; mysql> ALTER TABLE table_name RENAME TO table_name_backup;</code>
Récupération en profondeur
Si la table a été supprimée depuis longtemps, vous pouvez utiliser le journal binaire de MySQL pour récupérer les données. Cela nécessite les éléments suivants :
Étapes
SHOW BINARY LOGS
pour rechercher le fichier journal binaire et l'emplacement qui contient l'événement. SHOW BINARY LOGS
命令找到包含事件的二进制日志文件和位置。转储二进制日志:使用 mysqlbinlog
工具将二进制日志转储到 SQL 文件中:
<code>mysqlbinlog --start-position=start_position --stop-position=stop_position binary_log_file > dump.sql</code>
DROP TABLE table_name
语句,并将其替换为 CREATE TABLE table_name
Vider le journal binaire : Utilisez l'outil mysqlbinlog
pour vider le journal binaire dans un fichier SQL :
<code>mysql -u root -p your_db < dump.sql</code>
Ouvrez le fichier SQL vidé et recherchez DROP TABLE table_name
et remplacez-la par une instruction CREATE TABLE table_name
.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!