宝塔误删数据库有binlog的恢复过程

618 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

1.查看是否有binlog,一般宝塔会自动开启binlog

有,则可以恢复

1.先把binlog变成sql

/www/server/mysql/bin/mysqlbinlog /www/server/data/mysql-bin.000005 > /www/1.sql

2.打开sql文件分析end_log_pos

3.恢复

sudo /www/server/mysql/bin/mysqlbinlog --no-defaults /www/server/data/mysql-bin.000005 --start-position="2130" --stop-position="20526846" | /www/server/mysql/bin/mysql -uroot -p

回车输入root密码等待执行

这个时候可以去查询一下数据库表是否在生成

也可以修改生成的sql然后直接导入sql的方式,但我没试过。

在导入过程中,可能会发现权限不足等情况,所以需要用sudo加mysql的root用户来执行

当然,其他非宝塔的情况也是可以通过这样的方式来进行恢复,前提是有binlog