【已恢复】服务器MySQL被入侵,数据丢失恢复 | 您所在的位置:网站首页 › 入侵腾讯数据库怎么解决 › 【已恢复】服务器MySQL被入侵,数据丢失恢复 |
背景:当时在宝塔安装了MySQL5.7,然后当时只是测试,就直接设置用户名和密码为root,今天在Navicat突然登录不上了,于是在linux下登录MySQL,只剩下一个ReadMe文件,于是打开看了一下: 以下数据库已被删除:dbeco。 我们有完整的备份。 要恢复它,您必须向我们的比特币地址xxxx支付xx比特币(BTC)。 如果您需要证明,请通过以下电子邮件与我们联系。 [email protected] 。 任何与付款无关的邮件都将被忽略! 然后想着,完蛋了。因为我没有备份数据库。 后来我在网上找了一些数据库恢复方法(mysqlbinlog),与大家分享。 1、找到日志文件找到MySQL的安装目录,如果不记得可以通过ps -ef | grep mysql 查看运行的路径,在这里我的路径是/www/server/mysql/,但是它的日志存储文件在/www/server/data/,日志文件名字如:mysql-bin.000004 ,找最新的那个。可以通过mysqlbinlog命令查看具体日志, mysqlbinlog 命令应该在mysql的bin文件目录下,建议都使用绝对路径 /www/server/mysql/bin/mysqlbinlog /www/server/data/mysql-bin.000004 2、找到恢复(破坏)点比如我的数据库被破坏是在 end_log_pos 15100838 这个位置 3、回滚(重新执行) /www/server/mysql/bin/mysqlbinlog --stop-position=15100838 --database=dbeco /www/server/data/mysql-bin.000004 | /www/server/mysql -uroot -proot -v dbeco!!可能在恢复的时候会出现数据库已经存在,不要去删数据库再操作,在末尾加 -f 选项忽略错误即可 4、查看数据库 #登录数据库 mysql -uroot -proot #查看数据库表 mysql>show databases; #查看表的内容 mysql> use dbeco; mysql> show tables; mysql> select * from dbeco;然后可以看到数据库的内容恢复回来了。 5、其他但是在Navicat依然没有办法正常连接,暂时不知道具体原因,只好把数据库表的内容进行备份(在这里不做详细描述),然后删掉mysql,重新安装,重新配置,备份还原。如果有其他好方法可以分享,谢谢。 不要设置简单密码!!! 记得定期备份数据库!!! |
CopyRight 2018-2019 实验室设备网 版权所有 |