SHOW VARIABLES LIKE '%log_bin%'

SHOW BINARY LOGS;

SHOW MASTER STATUS;

SHOW VARIABLES LIKE '%datadir%';

使用上面使用的 binlog.000056 文件,先把 该文件复制到其他地方
mysqlbinlog E:testresultbinlog.000056 > E:testresultdb.sql
有可能报错

添加 --no-defaults 参数可以解决,但中文会乱码(使用下面 vbs 或自定义语言实现可解决 乱码问题),一般要加上时间字段转换 sql
mysqlbinlog --no-defaults --base64-output=decode-rows -v --database=oauth --start-datetime="2023-06-01 01:44:00" --stop-datetime="2023-06-01 01:48:00" F:mysql-8.0.29-winx64databinlog.000058 > E:testresultdb.sql
转换成功如下,可以看到删除 sql 的语句

接下来只需要将上面的 delete 语句转换为 inert 即可恢复误删数据,如果需要转换的多可以通过代码自定义实现,主要就是将delete 转 insert
通过 vbs 脚本转换 sql 语句,当然也可以使用其他的语言,window 执行 vbs 不需要额外的环境,你只需要修改下面 vbs 文件中输入输出文件名以及编码类型即可
'=========================='用VBS实现 MYSQL binglog DELETE 转 INSERT'==========================function replaceregex(patern,str,tagstr)dim regex,matchesset regex=new regExpregex.pattern=paternregex.IgnoreCase=trueregex.global=truematches=regex.replace(str,tagstr)replaceregex=matchesend function'Mysql binlog DELETE转INSERT=========='VBS打开文本文件Set oldStream = CreateObject("ADODB.Stream")oldStream.CharSet = "utf-8"oldStream.Open'binLog 生成的 DELETE 原日志文件'oldStream.LoadFromFile("E:testresultdb.sql") 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 objectnewStream.WriteText newTextnewStream.SaveToFile "mysqllogOK.sql", 2 'DELETE转成INSERT以后的新的SQL文件名newStream.Close转换结果如下,自行选择新增恢复数据

到此这篇关于MySQL恢复误删数据的文章就介绍到这了,更多相关MySQL恢复误删数据内容请搜索一聚教程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持一聚教程网!
模拟极限越野
模拟极限越野开着大巴在各种奇葩路况里送乘客。山路弯道多得让人
模拟火车
模拟火车让你当回真正的火车司机,得先学会看信号灯、操作控制杆
可口的披萨美味的披萨
可口的披萨美味的披萨带您体验经营一家披萨店的乐趣。游戏画风温
定制虚拟偶像最新版
定制虚拟偶像最新版是一款超级经典有趣的日本模拟装扮类型的手游
病娇模拟器手机版正版(yandere simulator)
病娇模拟器最新版手游是一款萌妹二次元模拟游戏,玩家在游戏中可