MySQL数据库基于时间点、日志文件、位置的备份

实验案例:
实验环境:

某学校近期在进行期中考试,要求数据库管理员负责一班、二班学生的考试成绩录入。为保证数据的可靠性,数据库管理员在录入学生成绩后均要做数据库备份,并且为了测试数据是否可用,模拟数据丢失故障,进行数据还原。

需求描述

在数据库表中,分三次录入学生考试成绩,具体的考试成绩信息参照下图

在这里插入图片描述

首次录入成绩后做该表的完全备份,后两次成绩的录入之后,分别做增量备份。

模拟数据丢失,并使用增量备份分别基于位置和时间点恢复一班所有学生成绩与二班陈铭与付杰的成绩。

推荐步骤:

更改数据库密码,重新登录数据库
在这里插入图片描述

创建数据库与表
首先创建一个库

mysql> create
database benet;

切换benet数据库

mysql> use benet;

创建表,表的名字为student

mysql> create table student(姓名 char(2),班级 char(2),学号 char(8),语文 char(3),数学 char(3),英语 char(3), 理综 char(3),primary key (理综));

在这里插入图片描述

在student表中插入数据,分别录入学生成绩

在这里插入图片描述

查看录入的数据
在这里插入图片描述

创建备份文件夹

[root@centos01 ~]# mkdir ./test

将第一次录入成绩的同学成绩备份下来

[root@centos01 data]# cp mysql-bin.000003
/root/test/

第一次做完全备份,分别备份表和库

[root@centos01~]#mysqldump -uroot -ppwd@123
benet student > ./test/benet_student.sql

[root@centos01 test]# mysqldump -u root -p
–database benet > ./test/benet_ku.sql

在这里插入图片描述

模拟数据丢失
删除student表

在这里插入图片描述

恢复表

在这里插入图片描述

删除库
在这里插入图片描述

使用source命令恢复库

mysql> source ./test/benet_ku.sql
在这里插入图片描述

刷新二进制日志做日志切割

[root@centos01 data]# mysqladmin -u root -p
flush-log

分别完成后两次成绩的录入做增量备份
在这里插入图片描述

[root@centos01 data]# cp mysql-bin.000004
/root/test/

模拟数据丢失

在这里插入图片描述

查看备份的二进制日志id

[root@centos01 ~]# mysqlbinlog --no-defaults ./test/mysql-bin.000004

在这里插入图片描述

分别使用基于位置和时间点恢复两名同学的成绩

insert into student (姓名,班级,学号,语文,数学,英语,理综) value (‘李宁’,‘一班’,‘20170824’,‘92’,‘98’,’‘11105’,‘235’);

使用基于位置的恢复信息

删除陈铭付杰两名学生成绩

在这里插入图片描述

通过基于位置恢复陈铭

[root@centos01
~]# mysqlbinlog --start-position=‘1831’ ./test/mysql-bin.000004 | mysql -u root -p

在这里插入图片描述
在这里插入图片描述

通过时间点恢复

[root@centos01
~]# mysqlbinlog --stop-datetime=‘2019-10-31 11:47:18’ ./test/mysql-bin.000005 |mysql -u root -p

在这里插入图片描述
备份的作用和常见的故障类型
备份的作用:发生灾难或者误操作将损失降到最低,能够快速恢复数据保证数据稳定运行常见的故障类型:数据库程序故障,人为发生误操作,运算错误,物理故障磁盘损坏,不可抗力的自然灾害

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值