CentOS7 MySQL 增量备份与恢复

在这里插入图片描述

2)进行完全备份

[root@MySQL ~]# mkdir /mysql.bak

[root@MySQL ~]# mysqldump -uroot -p123 zhangsan 成绩表 > /mysql.bak/zhangsan_成绩表-$(date +%F).sql

[root@MySQL ~]# ls -l /mysql.bak/

在这里插入图片描述

3)开启日志文件

[root@MySQL ~]# vim /usr/local/mysql/my.cnf

在 [mysqld] 下添加:

log_bin=/usr/local/mysql/mysql-bin

必看视频!获取2024年最新Java开发全套学习资料 备注Java

4)重启服务

[root@MySQL ~]# systemctl restart mysqld

[root@MySQL ~]# netstat -anpt | grep mysqld

在这里插入图片描述

5)查看生成的日志文件

[root@MySQL ~]# ll /usr/local/mysql/mysql-bin.* # 查看生成的日志文件

[root@MySQL ~]# mysqladmin -uroot -p123 flush-logs # 刷新日志

[root@MySQL ~]# ll /usr/local/mysql/mysql-bin.* # 再次查看生成的日志文件

在这里插入图片描述

6)再次录入样本

[root@MySQL ~]# mysql -uroot -p123

mysql> use zhangsan;

mysql> insert into 成绩表 values(‘王五’,‘66’);

mysql> insert into 成绩表 values(‘赵六’,‘55’);

mysql> select * from 成绩表;

在这里插入图片描述

7)进行增量备份

[root@MySQL ~]# mysqladmin -uroot -p123 flush-logs # 刷新日志

[root@MySQL ~]# ls -l /usr/local/mysql/mysql-bin.* # 查看生成的日志文件

[root@MySQL ~]# cp /usr/local/mysql/mysql-bin.000002 /mysql.bak/

在这里插入图片描述

8)模拟故障,删除成绩表

[root@MySQL ~]# mysql -uroot -p123 -e ‘drop table zhangsan.成绩表;’

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

在这里插入图片描述

9)先恢复完全备份,再进行增量恢复

先恢复完全备份:

[root@MySQL ~]# mysql -uroot -p123 zhangsan < /mysql.bak/zhangsan_成绩表-2021-02-17.sql

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

再增量恢复:

[root@MySQL ~]# mysqlbinlog --no-defaults /mysql.bak/mysql-bin.000002 | mysql -uroot -p123

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

在这里插入图片描述

2.基于位置的恢复

  • 模拟故障,删除成绩表。

[root@MySQL ~]# mysql -uroot -p123 -e ‘drop table zhangsan.成绩表;’

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

查看二进制文件来根据位置恢复:

[root@MySQL ~]# mysqlbinlog --no-defaults /mysql.bak/mysql-bin.000002 | grep -v “/”

在这里插入图片描述

1)先恢复完全备份,再进行基于停止位置恢复

  • 指定 停止位置,即不恢复 赵六 的用户数据。

先恢复完全备份:

[root@MySQL ~]# mysql -uroot -p123 zhangsan < /mysql.bak/zhangsan_成绩表-2021-02-17.sql

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

再指定停止位置恢复数据:

[root@MySQL ~]# mysqlbinlog --no-defaults --stop-position=‘450’ /mysql.bak/mysql-bin.000002 | mysql -uroot -p123

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

在这里插入图片描述

  • 再次模拟故障,指定起始位置:即只恢复 赵六 的数据,跳过 王五 的数据。

[root@MySQL ~]# mysql -uroot -p123 -e ‘drop table zhangsan.成绩表;’

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

2)先恢复完全备份,再进行基于起始位置恢复

先恢复完全备份:

[root@MySQL ~]# mysql -uroot -p123 zhangsan < /mysql.bak/zhangsan_成绩表-2021-02-17.sql

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

再指定起始位置恢复数据:

[root@MySQL ~]# mysqlbinlog --no-defaults --start-position=‘450’ /mysql.bak/mysql-bin.000002 | mysql -uroot -p123

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

在这里插入图片描述

3.基于时间的恢复

  • 模拟故障,删除成绩表。

[root@MySQL ~]# mysql -uroot -p123 -e ‘drop table zhangsan.成绩表;’

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

查看二进制文件来根据时间恢复

[root@MySQL ~]# mysqlbinlog --no-defaults /mysql.bak/mysql-bin.000002 | grep -v “/”

在这里插入图片描述

1)先恢复完全备份,再指定结束时间进行恢复

[root@MySQL ~]# mysql -uroot -p123 zhangsan < /mysql.bak/zhangsan_成绩表-2021-02-17.sql

[root@MySQL ~]# mysql -uroot -p123 -e ‘select * from zhangsan.成绩表;’

[root@MySQL ~]# mysqlbinlog --no-defaults --stop-datetime=‘2021-02-18 0:25:19’ /mysql.bak/mysql-bin.000002 | mysql -uroot -p123

最后

我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

新鲜出炉的蚂蚁金服面经,熬夜整理出来的答案,已有千人收藏

18 0:25:19’ /mysql.bak/mysql-bin.000002 | mysql -uroot -p123

最后

我还通过一些渠道整理了一些大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。

[外链图片转存中…(img-OEgW11JS-1716437041963)]

还有专门针对JVM、SPringBoot、SpringCloud、数据库、Linux、缓存、消息中间件、源码等相关面试题。

[外链图片转存中…(img-A4gjIz3k-1716437041964)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值