《童虎学习笔记》6分钟学会MySQL基于时间点的恢复(position方式)

本文详细介绍了如何基于position使用MySQL的备份文件和bin log恢复数据库到指定时间点。通过查看备份文件和bin log日志,确定position区间,然后解析并恢复,最终成功将数据库恢复到删除表之前的状态。
摘要由CSDN通过智能技术生成
    本文章配套视频 https://www.ixigua.com/7092728111422407198
本专栏全部文章 https://blog.csdn.net/tonghu_note/category_11716546.html
总目录 https://blog.csdn.net/tonghu_note/article/details/124333034

来我的dou音 aa10246666, 看配套视频


一、实战环境

节点 node4 mysql 8.0.28 10.211.55.7

本文主要讲解如何基于position的方式使用“备份文件+bin log”把数据库恢复到任意一个我们期望的时间点


二、操作场景

步骤 会话 命令
第1步 session 1 reset master;
第2步 session 1 use d1;create table t1(id int);
第3步 session 1 insert into t1 select 1;
第4步 session 2 mysqldump -uroot -proot --single-transaction --triggers --routines --events --source-data=2 -A > alldb.dump
第5步 session 1 insert into t1 select 2;
第6步 session 1 insert into t1 select 3;
第7步 session 1 drop table t1;
...

我们在第4步的时侯做了一个备份,在第7步做了一个删除表的操作,接下来我们要将数据库恢复到删除表t1之前的状态,也就是第6步(包含第6步)的状态


三、恢复数据库

1、查看备份alldb.dump文件中关于position的记录

root@node4:~# more alldb.dump 
-- MySQL dump 10.13  Distrib 8.0.28, for Linux (aarch64)
--
-- Host: localhost    Database: 
-- ------------------------------------------------------
-- Server version    8.0.28

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!50503 SET NAMES utf8mb4 */;
/*!40103 SET

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值