误删除mysql数据库表该如何恢复操作方法
admin
2023-04-26 01:20:09
0次

本文主要给大家介绍误删除mysql数据库表该如何恢复操作方法,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下误删除mysql数据库表该如何恢复操作方法吧。

一、实验环境:

1、准备两台虚拟机,一台用于破坏数据库,一台用于还原,两台在同一个网络

2、两台最小化安装centos 7系统,并直接yum安装maraidb数据库

3、准备一个测试数据库文件,例如,hellodb_innodb.mysql 测试库里面最少有两个表。

二、实验步骤:

1、开启数据库的二进制日志功能

vim /etc/my.cnf
[mysqld] 下面加入log-bin 表示开启二进制日志功能

误删除mysql数据库表该如何恢复操作方法

2、完全备份

mysqldump -A -F --master-data=2 --single-transaction |gzip >  /data/all.sql.gz
备份数据库文件并用gzip压缩,存放到/data目录

误删除mysql数据库表该如何恢复操作方法

3、直接连接数据库修改任意表

insert students (name,age)values('a',20);
insert students (name,age)values('b',30);

误删除mysql数据库表该如何恢复操作方法

select * from students 查询新加入的表信息

误删除mysql数据库表该如何恢复操作方法

4、模拟删除数据库表

drop table students;如图下,已将students表删除;

误删除mysql数据库表该如何恢复操作方法

5、假装不知道,继续修改其他表

insert teachers (name,age)values('zhangsir',30);

误删除mysql数据库表该如何恢复操作方法

6、发现重要表删除,立即锁表

flush tables with read lock; 给表加上读锁

7、在另一台机子上还原

vim /etc/my.cnf
skip-networking 确保其它用户不能访问数据库,只能自己操作
rm -rf /var/lib/mysql 将原来的数据库文件删除,避免原来有文件
scp /data/all.sql.gz 192.168.190.129:/data
将原来备份的文件,复制到现主机的目录中

8、完全备份还原

gzip -d /data/all.sql.gz  解压打包的备份文件
mysql < /data/all.sql  将文件导入到数据库中

误删除mysql数据库表该如何恢复操作方法

9、还原增量备份

less /data/all.sql 查看二进制日志位置

误删除mysql数据库表该如何恢复操作方法

确定二进制日志,以及起始位置为245
scp /var/lib/mysql/mariadb-bin.000002 192.168.190.129:/data
将二进制文件拷贝过来
mysqlbinlog -- start-position=245 /data/mariadb-bin.000002 > /data/binlog.sql
使用mysqlbinlog工具,生成新的二进制日志

误删除mysql数据库表该如何恢复操作方法

vim /data/binlog.sq
找到drop table students; 这条sql语句,注释有关此行

误删除mysql数据库表该如何恢复操作方法

mysql < /data/binlog.sql
导入二进制日志文件
恢复用户的访问

三、检验数据的完整性

show databases;
show tables

误删除mysql数据库表该如何恢复操作方法

上图中的students表已经恢复过来

误删除mysql数据库表该如何恢复操作方法
误删除mysql数据库表该如何恢复操作方法

如图所示,之前做的修改也都回来了。实验目的达到了。

四、实验总结

mariadb 数据库破坏后,需要借助完全备份+二进制日志文件进行还原,两者缺一不可,两者都非常重要,生产中既要保护好备份的数据库文件,同时还需要保护好二进制文件,从而保证数据还原的完整性。

看完以上关于误删除mysql数据库表该如何恢复操作方法,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。

相关内容

热门资讯

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