我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Mysql误删除DELETE数据找回操作指南

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Mysql误删除DELETE数据找回操作指南

1.查看binlog是否开启

show variables like '%log_bin%';

Mysql误删除DELETE数据找回操作指南

2.查看数据文件存放路径:bin-log路径

show variables like '%datadir%';

Mysql误删除DELETE数据找回操作指南

3.找到删除时间段的binlog,翻译为sql

mysqlbinlog --base64-output=decode-rows -v --database=数据库名 --start-datetime="2022-10-19 16:40:00" --stop-datetime="2022-10-19 16:450:00" "D:\Program Files\mysql-5.7.30-winx64\mysqldb\bin.000041" > d:\mysqllog.sql

4.在生成的 mysqllog.sql 文件同路径下 ,生成将delete翻译为insert的sql文件

linux:

cat mysqllog.sql | sed -n '/###/p' | sed 's/### //g;s//*./,/g;s/DELETE FROM/;INSERT INTO/g;s/WHERE/SELECT/g;' |sed -r 's/(@17.),/\1;/g' | sed 's/@1=//g'| sed 's/@[1-9]=/,/g' | sed 's/@[1-9][0-9]=/,/g' > mysqllogOK.sql

5、Windows:

在生成的sql文件同目录下,创建.vbs文件,写入如下内容,并双击执行

'==========================
'用vbs实现 MYSQL binglog DELETE转INSERT
'==========================
function replaceregex(patern,str,tagstr)
dim regex,matches
set regex=new regExp
regex.pattern=patern
regex.IgnoreCase=true
regex.global=true
matches=regex.replace(str,tagstr)
replaceregex=matches
end function

'Mysql binlog DELETE转INSERT==========
'VBS打开文本文件
Set oldStream = CreateObject(“ADODB.Stream”)
oldStream.CharSet = “utf-8”
oldStream.Open
oldStream.LoadFromFile(“mysqllog.sql”) 'binLog生成的DELETE原日志文件
oldText = oldStream.ReadText()
newText=replace(oldText,“### DELETE FROM”, “;INSERT INTO”)
newText=replace(newText,“### WHERE”, “SELECT”)
newText=replace(newText,“###”, “”)
newText=replace(newText,“@1=”, “”)
newText=replaceregex(“@[1-9]=”,newText, “,”)
newText=replaceregex(“@[1-9][0-9]=”,newText, “,”)
oldStream.Close
'VBS保存文件
Set newStream = CreateObject(“ADODB.Stream”)
newStream.Type = 2 'Specify stream type - we want To save text/string data.
newStream.Charset = “utf-8” 'Specify charset For the source text data.
newStream.Open 'Open the stream And write binary data To the object
newStream.WriteText newText
newStream.SaveToFile “mysqllogOK.sql”, 2 'DELETE转成INSERT以后的新的SQL文件名
newStream.Close

6、把mysqllog.sql文件和生成的windows中的.vbs放在同一个文件夹中双击执行生成mysqllogOK.sql文件

7、进入mysqllogOK.sql文件删除其中的delete保留insert再去执行mysqllogOK.sql就成功了

8、如果binlog日志没有开启可以进行开启

linux:

cd /usr/etc/vim my.cnf

Mysql误删除DELETE数据找回操作指南

log-bin=mysql-bin # 开启Binlog 一般只需要修改这一行即可
binlog-format=ROW # 设置格式 此行可以不加 命令设置即可 详见下方拓展
server_id=1 # 配置serverID 这一行本来就存在
systemctl restart mysqld #重启mysql

总结

到此这篇关于Mysql误删除DELETE数据找回操作的文章就介绍到这了,更多相关Mysql误删除数据找回内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Mysql误删除DELETE数据找回操作指南

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Mysql误删除DELETE数据找回操作指南

1.查看binlog是否开启show variables like '%log_bin%';2.查看数据文件存放路径:bin-log路径show variables like '%datadir%';3.找到删除时间段的binlog,翻
2023-05-19

阿里云服务器误删数据找回指南

随着云计算的快速发展,越来越多的企业和个人选择使用阿里云服务器来存储和处理数据。然而,由于各种原因,数据可能会被误删。那么,当阿里云服务器误删数据时,我们应该如何找回呢?本文将为您详细介绍具体的找回方法和步骤。一、了解误删数据的情况误删数据的情况主要有两种:一种是误删了重要的文件,另一种是误删了整个文件夹。误删的
阿里云服务器误删数据找回指南
2023-11-01

织梦CMS删除数据库文件操作指南

织梦CMS(DedeCMS)是一款广泛应用于网站建设的内容管理系统,提供了丰富的功能和灵活的定制性。然而,有时候我们需要删除数据库中的一些文件来清理空间或者解决一些问题,本文将为大家介绍如何在织梦CMS中操作删除数据库文件,并提供具体的代码
织梦CMS删除数据库文件操作指南
2024-03-13

mysql如何找回删除的数据

要找回在MySQL中被删除的数据,可以使用以下方法之一:使用备份:如果有定期备份数据库的策略,可以从备份中恢复被删除的数据。找到最近的备份文件,并从中恢复需要的数据。使用事务日志(Transaction Log):MySQL的事务日志(即二
mysql如何找回删除的数据
2023-10-28

mysql数据库删除怎么找回

如何在 mysql 中恢复已删除的数据:检查二进制日志是否已启用,二进制日志记录数据库更改。找到包含已删除数据的二进制日志文件。使用 mysqlbinlog 工具解析二进制日志文件并提取已删除数据的 sql 语句。从 sql 语句重新执行操
mysql数据库删除怎么找回
2024-08-05

Mysql数据库delete操作没报错却删除不了数据的解决

1、在操作页面执行删除操作,但没有删除成功,删除过wsOThVvmjB程无报错(以下为删js除操作的控制台日志)2、在数据js库执行删除操作表数据android执行删除语句删除staffId为3的数据结果却没编程客栈有删除成功3、原因
2023-01-04

mysql5.7.33误删除ibdata文件找回数据的方法

一、场景说明:很多时候因为 MySQL 数据库不能启动而造成数据无法访问,但应用的数据通常没有丢失,只是系统表空间等其它文件损坏了,或者遇到 MySQL 的 bug。这个时候如果没有备份,很多人就以为数据丢失了,但实际上大部分时候数据还是有
2022-05-14

Go编程指南:删除文件中的数据操作步骤

本文提供从文件中删除数据的 go 语言指南,具体步骤如下:创建并填充要删除数据的文件打开文件以进行读写设置文件偏离量到要删除数据的开始位置截断文件,从偏离量处移除数据关闭文件Go 编程指南:删除文件中的数据操作步骤介绍删除文件中的数据是
Go编程指南:删除文件中的数据操作步骤
2024-04-04

MySQL数据库数据删除操作详解

目录DELETE 语句DELETE 语句练习①DELETE 语句练习②DELETE 语句的表连接(内连接)DELETE 语句的表连接练习①DELETE 语句的表连接练习②DELETE 语句的表连接练习③DELETE 语句的表连接(外连接)D
2022-08-10

删除mysql数据表如何操作

MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失。 语法 以下为删除MySQL数据表的通用语法:DROP TABLE table_name ;在命令提示窗口中删除数据表 在my
2022-05-20

编程热搜

目录