MySQL数据误删除恢复

1.1 问题简述

开发反馈误删除了部分业务数据,需要恢复数据。
这里采用binlog2sql工具进行数据回滚。
1.2 环境
CentOS Linux release 7.4.1708 (Core)
mysql Ver 8.0.21 for Linux on x86_64 (MySQL Community Server - GPL)
1.3 数据库开启binlog
因为数据库server端服务器没有root权限,为了方便安装, 所以在网络打通且有root权限的测试服务器上安装工具恢复数据。

下载及安装

2.1 安装包下载
由于环境无法连接互联网,所有采用下载安装包的方式进行安装。
1)下载Python-3.8.2
https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tar.xz
2)下载Binlog2sql
https://codeload.github.com/danfengcao/binlog2sql/zip/master

3)下载PyMySQL-0.9.3
https://codeload.github.com/PyMySQL/PyMySQL/tar.gz/v0.9.3

4)下载mysql-replication-0.21
https://files.pythonhosted.org/packages/e3/54/8c496e300d610299bf168e2068dc10a64b66b299cbe596a27aac5d5b3e7b/mysql-replication-0.21.tar.gz

在这里插入图片描述
2.2 pip安装
#yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc libffi-devel
#tar -xvf Python-3.8.2.tar.xz
#cd Python-3.8.2
./configure --prefix=/usr --with-ensurepip --with-system-ffi
make && make install
root@localhost.localdomain:[/root/soft]python3 --version
Python 3.8.2
root@localhost.localdomain:[/root/soft]pip3 --version
pip 19.2.3 from /usr/lib/python3.8/site-packages/pip (python 3.8)

2.3 PyMySQL&mysql-replication安装
#pip3 install PyMySQL-0.9.3.tar.gz
#pip3 install mysql-replication-0.21.tar.gz
root@localhost.localdomain:[/root/soft]pip3 list
Package Version


mysql-replication 0.21
pip 19.2.3
PyMySQL 0.9.3
setuptools 41.2.0
2.4 解压binlog2sql
#unzip binlog2sql-master.zip
#mv binlog2sql-master/binlog2sql ./
常用参数:
可选参数
–stop-never
-K, --no-primary-key
-B, --flashback
–back-interval
连接参数
-h -u -p -P
日志过滤参数
–start-file --stop-file --start-position --stop-position --start-datetime --stop-datetime
对象过滤参数
-d DATABASES2 DATABASES2 -t TABLE1 TABLE2
类型过滤参数
–only-dml --sql-type INSERT UPDATE DELETE

数据恢复

同开发确认误操作的时间以及表名。根据binlog的时间确定采用哪个binlog进行数据恢复。

执行命令:可以查看恢复前执行的SQL。
python binlog2sql/binlog2sql.py -utestuser -pxxx-dtestdb -t test --start-file=‘mysql-bin.000013’ --start-datetime=‘2022-
03-01 14:30:00’ --stop-datetime=‘2022-03-01 15:30:00’ --only-dml –sql-type= DELETE >delete.txt

执行命令:生成回滚SQL。
python binlog2sql/binlog2sql.py -B -utestuser -pxxx-dtestdb -t test --start-file=‘mysql-bin.000013’ --start-
datetime=‘2022-03-01 14:30:00’ --stop-datetime=‘2022-03-01 15:30:00’ --onl
最终执行回滚SQL重新插入数据即成功恢复数据。
mysql>source insert.txt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/198874.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Windows环境下RocketMQ的安装及配置

目录 1.环境准备2.下载RocketMQ3.配置RocketMQ环境变量4.启动RecoketMQ4.1启动 name server4.2 启动 broker 5、启动报错问题解决5.1 java_HOME变量找不到5.2 启动闪退问题 1.环境准备 JDK和Maven需要先安装好。 RocketMQ是用Java语言写的,所以需要JDK的支持。 后面…

Mac电脑vm虚拟机 VMware Fusion Pro中文 for mac

VMware Fusion Pro是一款功能强大的虚拟机软件,适用于需要在Mac电脑上运行其他操作系统的用户。它具有广泛的支持、快速稳定的特点以及多种高级功能,可以满足用户的各种需求和场景。 多操作系统支持:VMware Fusion Pro允许在Mac电脑上运行多…

Wireshark中的TCP协议包分析

Wireshark可以跟踪网络协议的通讯过程,本节通过TCP协议,在了解Wireshark使用的基础上,重温TCP协议的通讯过程。 TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传…

人工智能-机器翻译:技术发展与代码实战

在本文中,我们深入探讨了机器翻译的历史、核心技术、特别是神经机器翻译(NMT)的发展,分析了模型的优化、挑战及其在不同领域的应用案例。同时,我们还提出了对未来机器翻译技术发展的展望和潜在的社会影响。 关注TechLe…

Shopee买家通系统自动下单更方便

Shopee购物平台的买家通系统为用户提供了一种便捷的自动下单方式,通过这一系统,用户可以轻松实现在虾皮平台购买商品的自动化操作。下面将介绍具体的操作流程,确保用户可以顺利完成整个购物流程。 首先,用户需要准备一个可用的虾皮…

Leetcode—205.同构字符串【简单】

2023每日刷题&#xff08;五十&#xff09; Leetcode—205.同构字符串 算法思想 参考自k神思路 实现代码 class Solution { public:unordered_map<char, char> s2t, t2s;bool isIsomorphic(string s, string t) {int n s.size();for(int i 0; i < n; i) {char …

TCP/IP五层(或四层)模型,IP和TCP到底在哪层?

文章目录 前言一、应用层二.传输层三.网络层&#xff1a;四.数据链路层五.物理层&#xff1a;六.OSI七层模型&#xff1a;1.物理层&#xff08;Physical Layer&#xff09;&#xff1a;2.数据链路层&#xff08;Data Link Layer&#xff09;&#xff1a;3.网络层&#xff08;Ne…

Django宠物之家平台

摘 要 随着互联网的快速发展&#xff0c;利用网络的管理系统也逐渐发展起来。在线管理模式快速融入了众多用户的眼球&#xff0c;从而产生了各种各样的平台管理系统。 关于本django宠物的家庭平台管理系统的设计来说&#xff0c;系统开发主要采纳Python技术、B/S框架&#xff…

四川云汇优想:抖音直播等级怎么升级?

抖音直播&#xff0c;作为当前最热门的社交平台之一&#xff0c;其等级体系一直备受用户关注。如何在抖音直播中迅速提升等级&#xff0c;成为众多用户探讨的话题。在这篇文章中&#xff0c;我们将深入探讨抖音直播等级的升级机制、好处以及一些实用的技巧&#xff0c;助你在抖…

简单介绍Docker

Docker 是一种应用容器化技术&#xff0c;它通过将应用程序及其依赖项打包到容器中&#xff0c;在不同的操作系统和平台上实现了可移植性和跨平台性。 Docker 的基本构成包括镜像&#xff0c;容器和仓库。 镜像是应用程序及其依赖项的打包文件&#xff0c;类似于虚拟机中的镜像…

拼多多市值大于淘宝

一分钟速览新闻点&#xff01; 拼多多市值一夜大涨 2000 亿&#xff0c;市值逼近阿里 华为推出员工转岗新公司补偿方案&#xff0c;已邀请 4 家智选车伙伴入股 雷军个人向武大捐赠 13 亿元现金&#xff0c;创全国高校单笔个人现金捐赠纪录 阿里云北上深等地访问异常&#xf…

融云 CEO 董晗获评甲子光年「2023 中国数字经济创新人物」

&#xff08;全网都在找的《社交泛娱乐出海作战地图》&#xff0c;点击获取&#x1f446;&#xff09; 11 月 30 日-12 月 1 日&#xff0c;甲子光年“甲子引力年终盛典”在北京举办&#xff0c;以“致追风赶月的你”为主题&#xff0c;深刻回顾了 2023 年国内外的科技发展历程…

疑难杂症 之 关闭模态窗口之后刷新父窗口

疑难杂症 之 关闭模态窗口之后刷新父窗口 1. 模态窗口 与 非模态窗口2. 弹出模态窗口2.1 实现效果2.2 实现代码2.2.1 刷新父窗口2.2.2 完整代码 2.3 参考 3. 其他刷新父窗口&#xff08;模态窗口页面与父窗口不在同一页面&#xff09;3.1 实现代码3.1.1 核心代码3.1.2 多层模态…

钉钉聊天审计软件有哪些

钉钉在企业中的广泛应用&#xff0c;聊天审计软件也日益受到关注。这类软件主要针对企业微信、钉钉等即时通讯工具&#xff0c;对其中的聊天记录进行审计&#xff0c;以便企业能够更好地管理员工的在线行为&#xff0c;并保障信息安全。 一、聊天审计软件的作用 1、监管员工行…

打表技巧——买苹果

与其明天开始&#xff0c;不如现在行动&#xff01; 文章目录 买苹果1.1 题目描述1.2 解决思路1.3 代码实现 &#x1f48e;总结 买苹果 1.1 题目描述 小虎去买苹果&#xff0c;商店只提供两种类型的塑料袋&#xff0c;每种类型都有任意数量 1)能装下6个苹果的袋子 2)能装下8个…

服务器巡检表

《服务器巡检表》检查项&#xff1a; 1、系统资源 2、K8S集群 3、Nginx 4、JAVA应用 5、RabbitMQ 6、Redis 7、PostgreSQL 8、Elasticsearch 9、ELK日志系统 获取软件开发全套资料进主页。

理解js中原型链的封装继承多态

前言 面向对象有三大特性:封装继承多态。 不过,js和java的封装继承多态是不一样的,我和从事java开发的朋友有过一次对话(抬杠 !--)。 我说:javascript也是面向对象语言, 他说:不对吧,js不是面向对象吧。 我说:是的,官方说的就是面向对象语言。 他说:那你知道三大特性吗?…

C/C++ 实现枚举网上邻居信息

在Windows系统中&#xff0c;通过网络邻居可以方便地查看本地网络中的共享资源和计算机。通过使用Windows API中的一些网络相关函数&#xff0c;我们可以实现枚举网络邻居信息的功能&#xff0c;获取连接到本地网络的其他计算机的相关信息。本文将介绍一个简单的C程序&#xff…

Linux计算机系统参数获取和压力测试

创建一个占用磁盘空间的测试文件 dd if/dev/zero oftestfile bs1M count1000查看磁盘占比 df -h /path/to/your/directory | awk NR2{print $5}查看CPU占比 mpstat 1 1 | awk $12 ~ /[0-9.]/ { print 100 - $12"% CPU Usage" }查看内存占比 free -m | awk NR2{pr…

数据结构——希尔排序(详解)

呀哈喽&#xff0c;我是结衣 不知不觉&#xff0c;我们的数据结构之路已经来到了&#xff0c;排序这个新的领域&#xff0c;虽然你会说我们还学过冒泡排序。但是冒泡排序的性能不高&#xff0c;今天我们要学习的希尔排序可就比冒泡快的多了。 希尔排序 希尔排序的前身是插入排…