作為開發人員,誤操作數據delete、update、insert是最正常不過的了,比如:
- 刪除忘記加where條件;
- 查詢為了圖方便按了F5,但是數據里面夾雜着delete語句。
不管是打着后發動機聲音噪音過大,缸筒活塞間隙過大,做過全身划痕處理;
還是噴過全身漆,對於有經驗的老司機來說,這些都是不是事(還原一下數據庫日志恢復就OK),
但是對於駕駛經驗不足的人來說就難以駕駛了,只能重新換車(請教DBA:數據庫管理員)。
但是並不是所有公司都有DBA,或者認識的朋友是DBA,那只能靠自己了,怎么辦呢?
不慌,看法寶!
微軟SQL服務器的增值軟件工具供應商提供了ApexSQL Log工具(支持SQL Server2005/2008/2012),只要我不付錢,就不是嫖客咯,我都給你們整理好了,
ApexSql Log 2018免安裝版下載地址(免費的哦)
百度網盤提取地址:
鏈接:https://pan.baidu.com/s/1h23f9cQuTQ_-r__yrfueSA
提取碼:XZ66
官網地址:https://www.apexsql.com/Download.aspx(比較慢);
這是基於數據庫日志的可視化恢復數據的工具,里面有很多功能,我們着重說數據恢復功能;
首先下載軟件,使用我上面分享的地址下載或者百度查詢下載也可以;
使用教程(以sql server2008為例)
我們先在數據庫創建數據表,插入數據,然后把數據全部delete掉,如圖所示:
使用ApexSql Log 2018工具恢復剛剛刪除的數據
使用其他版本的也可以,我這里使用2018版的
1、打開ApexSql Log 2018,雙擊ApexSQLLog.exe運行程序
2、登陸需要恢復的數據庫,點擊Next
3、選擇數據庫日志,如果是回訪備份文件點擊Add filf添加,一般直接默認第一個就好了,然后點擊Next
然后點擊第一個 Open results in grid(在網格中打開結果)
4、選擇需要恢復的時間、恢復的數據類型、恢復的數據表,然后點擊Finish
5、選擇需要的數據進行恢復
加載完成后,選擇需要恢復的數據,點擊上方的Undo圖標
數據加載出來后,可以直接復制到數據庫執行,也可以直接點擊Execute圖標執行
然后我們去數據庫看一下最后執行的結果,數據就還原啦;
小編這里不建議以主表自增為子表關聯的外鍵;
至於數據能夠恢復的上限這里並沒有測試,百度查了一下,有人說是8-10萬條數據后會丟失,
真實是多少就需要進一步的壓力測試了,這里就偷個懶,誰測試出來了艾特一下我看看。
對於drop和truncate暫時或者刪庫的就只能去備份里面恢復了,有其他辦法的小伙伴可以艾特我一下看看。
![]()
歡迎關注訂閱我的微信公眾平台【熊澤有話說】,更多好玩易學知識等你來取
作者:熊澤-學習中的苦與樂 公眾號:熊澤有話說 出處: https://www.cnblogs.com/xiongze520/p/13452106.html 創作不易,版權歸作者和博客園共有,轉載或者部分轉載、摘錄,請在文章明顯位置注明作者和原文鏈接。
|