1. 程式人生 > >SQLSERVER2012誤刪資料恢復過程

SQLSERVER2012誤刪資料恢復過程

由於長時間從事企業應用系統開發,前往使用者現場升級、除錯系統是比較常做的事情,但是就在週一,由於同事的失誤在毫無知覺的情況下誤刪了生產資料庫幾乎所有的資料。當我發現的那一刻,感覺頭髮都立起來了,心想這他孃的是要領盒飯了。
  為了迅速恢復系統的使用,在當時的情況下立即關閉相關係統的訪問入口,前後共花費不到五分鐘。經過思考,立即將最近的一次備份檔案進行還原,從而保證了系統的正常執行,但是此舉也不可避免的可能會丟掉某些資料。

  另外事情已經發生,如何做才能為以後的資料恢復做準備呢,以下是自己的觀點:

1、務必冷靜,事情已經發生不可慌亂。

2、立即檢視當前時間,最好能夠精確到秒,並做記錄。

3、應立即向直接上級反映此事,不可隱瞞,防止事態擴大。

4、如果許可權允許,應當立即停止相關應用,防止有新的資料寫入資料庫。

  事後一直不放心,當下次再出現這種情況的時候,該如何對資料進行資料恢復,儘可能的減小損失呢(做不到完全避免損失),因此從網上查閱大量資料並進行整理。

  之前生產資料庫使用的是sqlserver2000和2005,當時也出現過誤刪資料的情況,用Log Exlorer For SQL很輕鬆就恢復了資料,現在資料庫升級到2012了這個工具無法使用了,因此只能採用其他辦法,在此需要特別鳴謝CSDN一位大神的文章,網址:http://blog.csdn.net/dba_huangzj/article/details/8491327

  原文是SQLSERVER2008R2,本次試驗環境是2012版本。根據文章中過程的介紹,進行了整個過程的操作,但是還是未能一遍完成,現在在自己的操作過程中進行總結,並分享。

在此構建一個新的資料庫模擬資料恢復全過程。

1、構建新資料庫以及寫入一些資料


2、做一次完整備份,這個是前提,沒有一份完整備份檔案是無法進行接下來的操作的。

注意:如上圖所示,恢復模式一定要說完整,如果是其他型別那恐怕就沒有下文了。一般來講新建資料庫的時候,預設不要去改恢復模式這個屬性。

3、寫入一條新資料


4、刪除資料,讓悲劇重現,記住此時要記錄時間點,在現實中往往會由於慌亂忘記記錄,但是希望看了這個文章之後能夠記住此事。


好既然悲劇已經發生,也有了心理準備和恢復前準備,此刻最好看一下系統時間。接下來就要演示如何進行資料恢復。 


5、做事務日誌備份,做事務日誌備份需要注意一下一點,如圖所示

備份模式請選擇事務日誌,備份路徑自行決定

進入選項,將可靠性第1、2勾選,事務日誌選擇第二個,壓縮屬性可以不選擇.點選確定備份成功,此時資料庫將顯示為正在還原狀態

注意:如果備份失敗,請檢查該資料庫是否正在被佔用,如果是請kill。

6、還原完整備份

資料庫處於正在還原狀態,右鍵資料庫--任務--還原--檔案和檔案組,選擇最近的一次完整備份。此時,需要在“選項”中選擇第二種還原方式,具體如下圖。

如上圖,勾選完整資料備份檔案。

如上圖,恢復狀態選擇第二種,從字面意思就知道為什麼要選擇這種。

7、接著還原備份的事務日誌

完整備份還原完畢,接著要對事務日誌進行還原,右鍵資料庫--任務--還原--事務日誌,如下圖:

還原事務日誌的時候需要特別注意“時間點”這個設定,其他不需要設定。

時間點選擇為誤刪資料的時間點之前就可以恢復出誤刪的資料,所以之前強調要檢視一下時間。如下圖所示



點選確定,在確定等待還原成功,資料庫變成可用狀態。此時後再查詢,如下圖:



如果查詢發現數據不是你想要的,那麼可以重複上述的操作,從備份事務日誌開始,然後最後選擇時間點的時候在縮小範圍。

以上,完整的演示了個人在恢復資料過程中的總結。當然前提是允許這樣幹,當然大型電子商務系統、高併發系統應該不適用,肯定也不會出現誤刪資料的情況,都有對應的解決方案避免此類情況發生。

轉載:

相關推薦

SQLSERVER2012資料恢復過程

由於長時間從事企業應用系統開發,前往使用者現場升級、除錯系統是比較常做的事情,但是就在週一,由於同事的失誤在毫無知覺的情況下誤刪了生產資料庫幾乎所有的資料。當我發現的那一刻,感覺頭髮都立起來了,心想這他孃的是要領盒飯了。   為了迅速恢復系統的使用,在當時的情況下立即關閉

SqlServer無備份下資料恢復

系統已上線,給客戶修改bug的時候,使用delete語句刪表資料,沒想到庫沒切換成測試庫。誤刪了正式庫的資料,而且一次備份都沒有做過,玩大了 不扯了,進入主題 網上很多方法,都是針對至少有一次備份的情況下進行資料恢復的,沒有備份就基本上只能找資料恢復公司了。本章將通過日誌來恢復誤刪的資料,若是日誌檔案都沒

linux資料恢復教程(ext4檔案型別)

必要工具安裝1.extundelete安裝安裝依賴包:yum install e2fsprogs e2fsprogs-libs e2fsprogs-devel -y解壓安裝:cd /usr/local/srctar -jxvf extundelete-0.2.4.tar.bz

ext2檔案系統下rm-rf * 資料恢復

   如果你不小心執行了rm -rf * 或者 rm -rf XXX,在ext2系統並不是不可以恢復的。 一. 首先需要明確幾個基本概念:磁碟裝置檔案(簡稱硬碟)、分割槽、檔案系統、目錄&am

利用plsql工具恢復表和恢復資料

一、恢復誤刪表     1.執行以下sql語句,找到被自己誤刪的資料表對應的object_name;         select * from user_recyclebin t;--檢視被刪掉

Oracle資料庫中對資料恢復

如果一不小心對Oracle資料庫中的資料進行了誤刪除操作,那麼如何進行資料恢復呢(不考慮全庫備份和利用歸檔日誌)?如果使用的是9i以及之後的版本,那麼我們可以採用閃回技術對誤刪除的資料進行恢復。方式有兩種。 原理: 利用oracle提供的閃回方法,如果在刪除資料後還沒做大量的操作(只

linux資料檔案後恢復

--------------建立測試表 [[email protected] ~]$ sqlplus / as sysdba SQL>create user test identified by test default tablespace users;

oracle delete from table 資料恢復

oracle delete from table 誤刪資料的恢復: select log_mode,open_mode,flashback_on from v$database;        --檢視閃回功能是否開啟(NO 表示未開啟;Y

SQL Server 2008無備份資料恢復

系統已上線,給客戶修改bug的時候,使用delete語句刪表資料,沒想到庫沒切換成測試庫。誤刪了SQL Server正式庫的資料,而且一次備份都沒有做過,玩大了。 不扯了,進入主題 網上很多方法,都是針對至少有一次備份的情況下進行資料恢復的,沒有備份就基本上只能找資料恢復公司了。本章將通過日誌來恢復誤刪的

恢復資料

問題點: 比如,不小心使用 diskpark clean 刪除了整個硬碟。   1.下載DiskGenius破解版。 DiskGenius4.9.6專業版註冊版 https://download.csdn.net/download/qq_27278957/1069767

mysql 恢復資料

mysql通過bin_log恢復資料 轉載 2016年09月26日 15:55:39 2897 一、開啟binlog日誌: 編輯開啟mysql

CentOS 恢復 rm -rf * 資料--extundelete

一、 將磁碟分割槽掛載為只讀 這一步很重要,並且在誤刪除檔案後應儘快將磁碟掛載為只讀。越早進行,恢復的成功機率就越大。 1.  檢視被刪除檔案位於哪個分割槽 [root@localhost  ~]# mount/dev/mapper/VolGroup-lv_roo

Oracle 資料恢復措施

         Oracle中,常見的資料刪除操作就三種,truncate,drop,delete,下面分類說一下如何恢復   Truncate:     

mysql資料快速恢復

相信後端研發的同學在開發過程經常會遇到產品臨時修改線上資料的需求,如果手法很穩那麼很慶幸可以很快完成任務,很不幸某一天突然手一抖把表裡的資料修改錯誤或者誤刪了,這個時候你會發現各種問題反饋接踵而來。如果身邊有BDA或者有這方面經驗的同事那麼可以很快解決這個問題,如果沒有那

【迅龍資料恢復高手】刪除的檔案,格式化的分割槽,提示未被格式化,丟失分割槽可以使用迅龍硬碟資料恢復軟體(誤刪檔案恢復工具)進行恢復。 迅龍硬碟資料恢復軟體(誤刪檔案恢復工具)支援所有原因丟失的檔案、掃描速度快、恢復效果好

誤刪除的檔案,誤格式化的分割槽,提示未被格式化,丟失分割槽可以使用迅龍硬碟資料恢復軟體(誤刪檔案恢復工具)進行恢復。 迅龍硬碟資料恢復軟體(誤刪檔案恢復工具)支援所有原因丟失的檔案、掃描速度快、恢復效果好... (adsbygoogle = window.

Oracle資料修改資料恢復

select * from com_parameter(表名) as of timestamp TO_TIMESTAMP('2015-08-03 9:00:00','YYYY-MM-DD HH24:MI

linux下資料檔案恢復

linux下檔案被刪除可以用很多工具進行恢復,例如undelete(適合ext2,ext3)、giis(不能恢復安裝giis之前的檔案)、ext3grep(僅限ext3)、R-linux(支援ext3,但是需要作業系統是32位的)。還有testdisk等等就不一一介紹了。需

CentOS 恢復 rm -rf * 資料

一、 將磁碟分割槽掛載為只讀 這一步很重要,並且在誤刪除檔案後應儘快將磁碟掛載為只讀。越早進行,恢復的成功機率就越大。 1.  檢視被刪除檔案位於哪個分割槽 [root@localhost  ~]# mount/dev/mapper/VolGroup-lv_root on / type ext

SqlServer無備份下恢復資料

開發十年,就只剩下這套架構體系了! >>>   

刪除系列三:記一次有道筆記資料恢復過程

1. 環境: 三個有道雲筆記客戶端分別是windows7、iphone、MAC   2. 事件發生過程: 今天早上在win7的有道雲筆記下記錄一些筆記時,出現誤刪除操作,當時我使用的是它的markdown模組進行記錄操作,剛好一個文件記錄了我一週一些學習過程的筆記,就在某一個時刻敲鍵盤時,