两个场景下Mysqldump数据库备份恢复
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,场景一昨天凌晨2点做过一次完全备份,白天正常使用,该下班的时候,好巧啊!硬盘坏了。不过幸运的是做过备份并且二进制日志和数据库分开存放1、建立数据库并开启二进制日志建立用于存放二进制日志的文件夹,修改文
千家信息网最后更新 2026年10月31日两个场景下Mysqldump数据库备份恢复
场景一
昨天凌晨2点做过一次完全备份,白天正常使用,该下班的时候,好巧啊!硬盘坏了。不过幸运的是做过备份并且二进制日志和数据库分开存放
1、建立数据库并开启二进制日志

建立用于存放二进制日志的文件夹,修改文件夹属组属主使mysql用户可以读
二点钟做完全备份,备份完看下是否备份成功
mysqldump -A -F --single-transaction --master-data=2 > /backup/fullbak`date +%F`.sql
less /backup/fullbak2019-07-11.sql #--master-data选项在备份时自动记录bin-log的位置
模拟2点到18点的数据修改
2、存放数据库的硬盘损坏,所有数据库丢失
3、还原
故障恢复中可以让用户暂停访问数据库
vi /etc/my.cnf #添加一行

systemctl restart mariadb
查看当前二进制日志的位置
从二进制日志中获取2点到18点数据
[root@swh ~]mysqlbinlog --start-position=245 /data/logbin/mysql-bin.000003 > /backup/inc.sql[root@swh ~]#mysqlbinlog /data/logbin/mysql-bin.000004 >> /backup/inc.sql[root@swh ~]#mysqlbinlog /data/logbin/mysql-bin.000005 >> /backup/inc.sql[root@swh ~]#mysqlbinlog /data/logbin/mysql-bin.000006 >> /backup/inc.sql
由于恢复数据库会产生大量的日志,可以临时关闭二进制日志
MariaDB [(none)]> set sql_log_bin=off;MariaDB [(none)]> source /backup/fullbak2019-07-11.sql #导入完全备份MariaDB [(none)]> source /backup/inc.sql #导入增量备份MariaDB [(none)]> set sql_log_bin=on;恢复后检查数据库,恢复访问MariaDB [hellodb]> select * from students;
vi /etc/my.cnf #去掉skip-networking
场景二
凌晨2点做过一次完全备份,白天使用过程中,某同事误删除数据库,当时并未发现,直到下班的时候出故障了
1、数据库完全备份
mysqldump -A -F --single-transaction --master-data=2 > /backup/fullbak`date +%F`.sql
less /backup/fullbak2019-07-11.sql #--master-data选项在备份时自动记录bin-log的位置
2、表被删除,但是没有发现,继续使用,在18点发现问题
3、还原
故障恢复中可以让用户暂停访问数据库
vi /etc/my.cnf #添加一行

systemctl restart mariadb
查看当前日志的位置
根据备份文件中记录的日志位置,从二进制日志获取增量
[root@swh ~]#mysqlbinlog --start-position=245 /data/logbin/mysql-bin.000013 > /backup/inc.sql[root@swh ~]#cp /backup/inc.sql /backup/inc.sql.bak #修改下备份下[root@swh ~]#vi /backup/inc.sql #从二进制日志中找出删表语句并删除,剩下的日志就是使用的日志
[root@swh ~]#rm -rf /var/lib/mysql/* #可以选择删除所有数据库恢复,或者直接恢复增量备份[root@swh ~]#systemctl restart mariadbMariaDB [(none)]> set sql_log_bin=off;MariaDB [(none)]> source /backup/fullbak2019-07-11.sqlMariaDB [(none)]> source /backup/inc.sqlMariaDB [(none)]> set sql_log_bin=on;
检查数据
vi /etc/my.cnf #去掉skip-networking
虽然可以恢复但是花费的时间成本或许是相当大的,生产环境还需慎重
备份
数据
日志
数据库
二进制
位置
增量
故障
文件
用户
进制
从二
场景
一行
文件夹
时候
点到
硬盘
检查
幸运
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
新华互联网科技学校
金融科技创新监管互联网金融
奇酷互联网科技
广州互联网络科技有限公司
融势互联网科技
成都仁贤领冠互联网科技有限公司
互联网公司会议桌创意科技软装饰
华中科技有哪些互联网大佬
安控科技rtu产品工业互联网
互联网科技热点资讯
知域互联网科技有限公司大骗子
佛山市拉法互联网科技有限公司
世界互联网领先科技成果获奖
锡山区互联网智能科技产品供应
产业互联网科技服务公司
厦门江牛科技互联网
广州有谷有贝互联网科技有限公司
吉林省码上互联网科技电话
互联网界的黑科技
高科技和互联网的现代国家
中关村互联网科技集团
互联网金融科技平台
亿账通互联网科技
深圳艾佳互联网科技
互联网科技英文翻译
以后互联网后是啥科技
佛山市拉法互联网科技有限公司
从那以后互联网科技有限公司
福仕德教育科技互联网
互联网科技大会大佬