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;

相关推荐
troy1288 小时前
向量数据库选型指南:Milvus / Qdrant / Chroma / pgvector
数据库·milvus
彧azz8 小时前
Redis 全面指南:从核心概念到高可用架构实战
数据库·redis·架构
DBA小马哥9 小时前
MongoDB 数据同步怎么做?oplog、Change Streams、同步工具 4 种方案一次讲清(附踩坑清单)
数据库·mongodb
服务端相声演员10 小时前
in子查询的执行可能被优化为连接查询
mysql
香菜TTT11 小时前
Redis的哨兵机制
java·数据库·redis
风哥2号12 小时前
数据库教程FGMT13‑Oracle性能优化之数据仓库与分区表
数据库·oracle·性能优化
玉宇夕落12 小时前
Docker + Milvus,数据库永久存放记忆,让对话历史永不丢失
数据库·docker·llm
Zenova EdgeOS12 小时前
工业网关数据持久化:从同步到 WAL 的工程实战
网络·数据库·oracle
企查查数据服务12 小时前
全军禁入下客商准入风控,关联图谱与穿透核查
大数据·开发语言·数据库·php