Mysql数据恢复

本文详细介绍了Mysql数据恢复的整个过程,包括创建数据库和表、日志查询以及数据恢复。通过查询和分析日志,利用特定命令进行数据恢复,成功找回被删除的数据。
摘要由CSDN通过智能技术生成

Mysql数据恢复

1、创建数据库和表`

create database test1;
CREATE TABLE `course`  (
  `id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '课程id',
  `name` varchar(10)  DEFAULT NULL COMMENT '课程名称',
  `tid` bigint(0)  DEFAULT NULL COMMENT '教师id',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB   COMMENT = '课程表'  ;
 
INSERT INTO `course` VALUES (1, '语文', 2);
INSERT INTO `course` VALUES (2, '数学', 1);
INSERT INTO `course` VALUES (3, '英语', 3);

创建完表之后查询数据,以下是course表的数据内容 :
在这里插入图片描述
然后删除表格的一条数据,再次进行查询course表的数据内容:
在这里插入图片描述

2、日志的查询

使用以下命令进行当前日志的查询:

show master status;

查询结果如下:
在这里插入图片描述
使用如下命令刷新日志,生成一个新的日志,后续的表格操作都会在这个日志里:

flush logs;

之后再进行日志查询,查询结果如下:
在这里插入图片描述
向表格内插入新的数据:

INSERT INTO `course` VALUES (11, '法语', 1);
INSERT INTO `course` VALUES (12, '德语', 1);

对表格进行查询,结果如下:
在这里插入图片描述
使用如下命令进行日志记录查询:

SHOW BINLOG EVENTS IN 'binlog.000004';

查询得志日志要恢复的开始节点为1909,结束节点是3537,如下图所示:
在这里插入图片描述
在这里插入图片描述

3、数据恢复

再次刷新日志,产生一个新的日志:
在这里插入图片描述
使用如下命令对日志binlog.0000004的数据进行恢复:

mysqlbinlog  --start-position=1909 --stop-position=3537   /var/lib/mysql/binlog.000004  | mysql -uroot -p

以下是恢复的结果,可见之前被删除的数据已经被恢复了:
在这里插入图片描述
使用以下命令对日志binlog.000005进行查询:

SHOW BINLOG EVENTS IN 'binlog.000005';

由查询结果可知,此日志要恢复的开始节点为310,结束节点为769:
在这里插入图片描述
以下是恢复结果:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值