數據庫誤刪某表恢復方法,這個前提是針對每天有備份的數據庫 ,如果沒有備份 恢復起來會非常非常麻煩,所以奉勸大家還是要備份!備份!備份!
/*首先查看壹下數據表中的數據*/MariaDB [drop_test]> select * from python_test;+----+-----------+------------+| id | name ?| class_time |+----+-----------+------------+| ?1 | 字典 ?| ?3 || ?2 | 列表 ?| ?2 || ?3 | 函數 ?| ?5 || ?4 | 裝飾器 | ?2 || ?5 | 叠代器 | ?2 |+----+-----------+------------+5 rows in set (0.00 sec)
/*備份*/mysqldump -uroot -p111111 -B drop_test >drop_test.sql
/*再插入數據後刪除數據庫*/MariaDB [drop_test]> INSERT INTO python_test(id,name,class_time) value(6,'生成器',2);
Query OK, 1 row affected (0.01 sec)
MariaDB [drop_test]> INSERT INTO python_test(id,name,class_time) value(7,'類的方法',5);
Query OK, 1 row affected (0.00 sec)
刪除數據庫
MariaDB [drop_test]> drop database drop_test ;
Query OK, 1 row affected (0.01 sec)
切記這個時候不要有任何的操作!!!
/*這個時候要將當前的binlog日誌拷貝到其他目錄,以免後續操作對binlog日誌產生影響*/cp /var/lib/mysql/mysql-bin.000006 /home
/*執行命令*/mysqlbinlog -d drop_test mysql-bin.000006 >006bin.sql
編輯006bin.sql將裏面的drop全部刪除
最後則是開始恢復數據
/*首先恢復備份文件*/mysql -uroot -p111111 drop_test < drop_test.sql
/*查看數據庫備份文件*/MariaDB [(none)]> show databases;+--------------------+| Database ? |+--------------------+| information_schema || drop_test ?|| for_bak || lhc || mysql ?|| performance_schema || test ? |+--------------------+7 rows in set (0.00 sec)/*備份的數據已經恢復了*/MariaDB [drop_test]> show tables;+---------------------+| Tables_in_drop_test |+---------------------+| python_test |+---------------------+1 row in set (0.00 sec)
MariaDB [drop_test]> select * from python_test;+----+-----------+------------+| id | name ?| class_time |+----+-----------+------------+| ?1 | 字典 ?| ?3 || ?2 | 列表 ?| ?2 || ?3 | 函數 ?| ?5 || ?4 | 裝飾器 | ?2 || ?5 | 叠代器 | ?2 |+----+-----------+------------+5 rows in set (0.00 sec)
接下來恢復備份之後被刪除的數據
mysql -uroot -p111111 drop_test < 006bin.sql
/*恢復後查看數據*/MariaDB [drop_test]> select * from python_test;+----+--------------+------------+| id | name | class_time |+----+--------------+------------+| ?1 | 字典 | ?3 || ?2 | 列表 | ?2 || ?3 | 函數 | ?5 || ?4 | 裝飾器 ? | ?2 || ?5 | 叠代器 ? | ?2 || ?6 | 生成器 ? | ?2 || ?7 | 類的方法 | ?5 |+----+--------------+------------+7 rows in set (0.00 sec)