MySQL实现基于时间点的恢复
admin
2023-06-04 20:21:31
0次

前期说明:我每天指定了数据库凌晨1点做全备,这天有人一不小心,删除了某个数据库里面的一个表,需要恢复,怎么弄? 


参考 :http://blog.csdn.net/zhaoyangjian724/article/details/48715321


1  确认log_bin是否打开 

mysql> show global variables like 'log_bin'; 
+---------------+-------+ 
| Variable_name | Value | 
+---------------+-------+ 
| log_bin       | ON    | 
+---------------+-------+ 
1 row in set (0.00 sec)

 

如果没有开启在配置文件里my.cnf,添加

[mysqld]

log-bin=mysql-bin

2  在test库里面新建一个表upl

use test;
create table upl;
插入数据
insert into upl values (1,'tom'),(2,'mary'),(3,'bean');
查看数据
mysql> select * from upl;
+------+------+
| id   | user |
+------+------+
|    1 | tom  |
|    2 | mary |
|    3 | bean

3 在时间点a备份数据库test

mysqldump -uroot -p --databases test > /data/test.sql


4 时间点b再次登录数据库,创建表test.t2

 mysql> create table t2 (a int); 
Query OK, 0 rows affected (0.00 sec) 
mysql> insert into t2 values(10); 
Query OK, 1 row affected (0.02 sec) 
mysql> commit; 
Query OK, 0 rows affected (0.00 sec) 
mysql> select * from t2; 
+------+ 
| a    | 
+------+ 
|   10 | 
+------+ 
1 row in set (0.00 sec)

5 在时间点c删除upl,t2

drop table upl;

drop table t2;


6 要求恢复到时间点b (upl和t2同时存在)

先恢复全库  mysql -uroot -p < /data/test.sql

登录mysql发现upl表已经存在了

挖掘log-bin日志  mysqlbinlog --start-datetime='2016-10-21 14:46:10' --stop-datetime='2016-10-21 14:50:35'  mysql-bin.000001 > recovery.sql


说明:这两个时间点只能取大概的时间,不能确定精确的时间,可以写上面数据库备份完的那个时间,结束时间就写删除某个表的时间(大概) 这个mysql-bin.000001 日志文件选择最新的那个(距离删除时间最近的)

然后再把这个recovery.sql倒入到数据库里

mysql -uroot -p < recovery.sql

再次登录mysql数据库,发现t2也已经存在了,到此全部恢复完成!


 


相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...