欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mysql誤刪除DELETE數據找回操作指南

 更新時間:2023年05月18日 15:09:56   作者:千碩  
如果我們在數據庫中不小心執(zhí)行了類似"delete from t1"這樣的不帶where條件的語句,那么整張表的數據就全被刪除了,下面這篇文章主要給大家介紹了關于Mysql誤刪除DELETE數據找回操作的相關資料,需要的朋友可以參考下

1.查看binlog是否開啟

show variables like '%log_bin%';

2.查看數據文件存放路徑:bin-log路徑

show variables like '%datadir%';

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文件同目錄下,創(chuàng)建.vbs文件,寫入如下內容,并雙擊執(zhí)行

'==========================
'用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放在同一個文件夾中雙擊執(zhí)行生成mysqllogOK.sql文件

7、進入mysqllogOK.sql文件刪除其中的delete保留insert再去執(zhí)行mysqllogOK.sql就成功了

8、如果binlog日志沒有開啟可以進行開啟

linux:

cd /usr/etc/vim my.cnf

log-bin=mysql-bin # 開啟Binlog 一般只需要修改這一行即可
binlog-format=ROW # 設置格式 此行可以不加 命令設置即可 詳見下方拓展
server_id=1 # 配置serverID 這一行本來就存在
systemctl restart mysqld #重啟mysql

總結

到此這篇關于Mysql誤刪除DELETE數據找回操作的文章就介紹到這了,更多相關Mysql誤刪除數據找回內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 數據庫面試必備之MySQL中的樂觀鎖與悲觀鎖

    數據庫面試必備之MySQL中的樂觀鎖與悲觀鎖

    這篇文章主要介紹了數據庫面試必備之MySQL中樂觀鎖與悲觀鎖的相關資料,樂觀鎖適用于讀多寫少的場景,通過版本號檢查避免沖突,而悲觀鎖適用于寫多讀少且對數據一致性要求極高的場景,通過加鎖確保數據一致,需要的朋友可以參考下
    2025-04-04
  • mySQL中replace的用法

    mySQL中replace的用法

    MySQL replace函數我們經常用到,下面就為您詳細介紹MySQL replace函數的用法,希望對您學習MySQL replace函數方面能有所啟迪
    2012-09-09
  • mysql exists與not exists實例詳解

    mysql exists與not exists實例詳解

    這篇文章主要介紹了mysql exists與not exists實例詳解的相關資料,鑒于 not exists 的效率往往要高于 not in , 所以一般情況下會使用前者替代后者,需要的朋友可以參考下
    2017-07-07
  • MySQL中的ALTER EVENT語句的具體使用

    MySQL中的ALTER EVENT語句的具體使用

    EVENT?是一種特殊的數據庫對象,它允許你在指定的時間間隔或特定的時間自動執(zhí)行SQL語句或語句集,本文主要介紹了MySQL中的ALTER EVENT語句的具體使用,感興趣的可以了解一下
    2024-07-07
  • 原來MySQL?數據類型也可以優(yōu)化

    原來MySQL?數據類型也可以優(yōu)化

    這篇文章主要介紹了原來MySQL?數據類型也可以優(yōu)化,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下,希望對你的學習有所幫助
    2022-08-08
  • MySQL數據庫如何正確設置主鍵

    MySQL數據庫如何正確設置主鍵

    主鍵是用于唯一標識數據庫表中每一行數據的一列或一組列,主鍵可以確保數據的唯一性和完整性,這篇文章主要給大家介紹了關于MySQL數據庫如何正確設置主鍵的相關資料,需要的朋友可以參考下
    2024-04-04
  • 快速解決MySQL服務無法啟動顯示:系統(tǒng)出錯,發(fā)生系統(tǒng)錯誤1067, 進程意外終止的兩種方法

    快速解決MySQL服務無法啟動顯示:系統(tǒng)出錯,發(fā)生系統(tǒng)錯誤1067, 進程意外終止的兩種方法

    本人因為phpstudy的MySQL數據庫與我的電腦上的MySQL數據庫發(fā)生沖突,當我將MySQL服務器的服務名從MySQL改為MySQL5后,啟動MySQL5服務后就報錯:系統(tǒng)出錯, 發(fā)生系統(tǒng)錯誤 1067, 進程意外終止,現在將這個解決方法分享給大家,需要的朋友可以參考下
    2024-06-06
  • MySQL筆記之修改數據的解決方法

    MySQL筆記之修改數據的解決方法

    本篇文章介紹了,在mysql中修改數據的解決方法。需要的朋友參考下
    2013-05-05
  • MySQL?中的?SQL_MODE?設置方法ANSI_QUOTES?選項解析與應用小結

    MySQL?中的?SQL_MODE?設置方法ANSI_QUOTES?選項解析與應用小結

    sql_mode是?MySQL?中的一個系統(tǒng)變量,用于控制?SQL?語句的解析和執(zhí)行方式,它由多個選項組成,每個選項都可以獨立設置,以滿足不同的應用場景需求,這篇文章主要介紹了MySQL?中的?SQL_MODE?設置:ANSI_QUOTES?選項解析與應用
    2024-12-12
  • Ubuntu 18.04配置mysql以及配置遠程連接的步驟

    Ubuntu 18.04配置mysql以及配置遠程連接的步驟

    這篇文章主要給大家介紹了關于Ubuntu 18.04配置mysql以及配置遠程連接的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-07-07

最新評論