mysql数据库的全量与增量的备份以及恢复

目录

一、全量备份与恢复

1.全量备份

2.删掉某个数据库

3.全量恢复数据库

二、增量备份与恢复

1.查看增量是否开启,我们发现log_bin开启证明开启了

2.创建一个数据库并创建表中信息

3.插入数据

4.进行一次全量的备份

5.做完备份刷新一下数据库,重新进行写入数据

6.在数据库中增加一条新的数据,删除原来的一条数据

7.删掉其中一个数据库

三、全量、增量的数据库恢复

1.先刷新一下数据库

2.查看数据库之前的所有的数据

3.查看当前使用的数据库

4.查看之前数据的操作,确定在哪里被删除的,我们发现在926时候删除的

5.先进行一个全量恢复

6.查看数据库信息

7.我们看mydb数据发现虽然是进行了全量恢复,但是我们没恢复删除前的数据。

8.将删除数据前的数据记录设置为增量数据

9.进行增量恢复的操作

10.查看数据是否恢复

一、全量备份与恢复

1.全量备份

mysqldump -uroot -proot --databases -default-character-set=utf8mb4 > backup.sql

2.删掉某个数据库

drop database sys;

3.全量恢复数据库

mysql -uroot -proot < backup.sql;

二、增量备份与恢复

1.查看增量是否开启,我们发现log_bin开启证明开启了

show varibles like '%bin%';

2.创建一个数据库并创建表中信息

create table stu_info(

stu_nu int primary key auto_increment,

stu_name varchar(30) not null

) auto_increment=1001;

3.插入数据

insert into stu_info values(null,'张三'),(null,'李四'),(null,'王五');

select * from stu_info;

4.进行一次全量的备份

mysqldump -uroot -proot --all-databases --default-character-set=utf8mb4 > backup1.sql

5.做完备份刷新一下数据库,重新进行写入数据

mysqladmin -uroot -proot flush-logs

6.在数据库中增加一条新的数据,删除原来的一条数据

insert into stu_info values (null,'李丽');

delete from stu_info where stu_nu=1002;

select * from stu_info;

7.删掉其中一个数据库

drop databases mydb;

三、全量、增量的数据库恢复

1.先刷新一下数据库

flush logs;

2.查看数据库之前的所有的数据

show master logs;

3.查看当前使用的数据库

show master status;

4.查看之前数据的操作,确定在哪里被删除的,我们发现在926时候删除的

show binlog events in 'binlog.000009';

5.先进行一个全量恢复

mysql -uroot -proot < backup1.sql

6.查看数据库信息

show databases;

7.我们看mydb数据发现虽然是进行了全量恢复,但是我们没恢复删除前的数据。

select * from stu_info;

8.将删除数据前的数据记录设置为增量数据

mysqlbinglog binlog.000009 > increment.sql

9.进行增量恢复的操作

mysqlbinlog -uroot -proot binlog.000009 --start-position=4 --stop-position=822 -r result.sql

mysql -uroot -proot < result.sql

10.查看数据是否恢复

select * from stu_info;

相关推荐
ictI CABL9 小时前
redis连接服务
数据库·redis·bootstrap
苍煜10 小时前
SpringBoot单体应用到分布式下的数据库锁、事务、Redis事务、分布式锁、分布式事务协调
数据库·spring boot·分布式
xmjd msup10 小时前
mysql的分区表
数据库·mysql
Lyyaoo.10 小时前
【JAVA Spring面经】Spring 事务失效情况
java·数据库·spring
MeAT ITEM10 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
dovens10 小时前
PostgreSQL 中进行数据导入和导出
大数据·数据库·postgresql
IOT.FIVE.NO.110 小时前
claude code desktop cowork报错解决和记录Workspace..The isolated Linux environment ...
linux·服务器·数据库
Rick199310 小时前
mysql 慢查询怎么快速定位
android·数据库·mysql
科技小花17 小时前
全球化深水区,数据治理成为企业出海 “核心竞争力”
大数据·数据库·人工智能·数据治理·数据中台·全球化
X566118 小时前
如何在 Laravel 中正确保存嵌套动态表单数据(主服务与子服务)
jvm·数据库·python