手滑删除了客户的数据表 里面的数据都是客户一条一条导进去的 最好能够恢复 否则肯定会造成客户不满意
解决思路
1.先把现有的数据备份好 在没有恢复数据之前尽量不要修改表 此时少一步操作在恢复数据时就能省一步操作(不知道怎么操作时,最好的操作就是不要乱操作),注意 此时最好先暂停网站,防止继续往该表中插入数据,造成新数据id与被删数据id重合,那时恢复起来可能需要遗弃一些数据了。
2.检查MySQL是否开启了binlog日志 我用的linux的宝塔面板 是自动开启的
3.找出相应的二进制日志(一般是mysql-bin.000005这种文件名,使用命令/www/server/mysql/bin/mysqlbinlog /www/server/data/mysql-bin.000247 > 1.sql
) 恢复成MySQL文件(这样才能看清楚需要的数据)
4.编辑恢复出来的sql文件,查看所需要的数据的时间段,根据时间段使用bilog文件进行恢复(根据sql文件里面的创建 添加等信息 进行排查 里面有每个操作的执行时间 使用命令进行全量恢复,最好新建一个数据库,不要在原来的数据库进行操作,使用全量恢复的命令/www/server/mysql/bin/mysqlbinlog --start-date="2021-04-25 13:00:00" --stop-date="2021-05-28 15:12:00" /root/AutoEditConfig/mysql-bin.000005 | mysql -u root -pf2db89bc560ab13)
5.此时顺利的话 数据已全量恢复到第四步新建的数据库中,找出的其中被误删数据的表,看下数据是否已经恢复,如果已经恢复的话,导出该表,把该表的数据倒入到误删的数据库中就可以了.
6,检查数据是否正确,通知客户,重新开启网站使用
mysql数据表误删 使用mysqlbinlog恢复数据
最新推荐文章于 2022-11-27 23:37:27 发布