回覆列表
  • 1 # 使用者1965772315225

    SQL Server中誤刪除資料的恢復本來不是件難事,從事務日誌恢復即可。但是,這個恢復需要有兩個前提條件:1. 至少有一個誤刪除之前的資料庫完全備份。2. 資料庫的恢復模式(Recovery mode)是“完整(Full)”。針對這兩個前提條件,會有三種情況:情況一、如果這兩個前提條件都存在,透過SQL語句只需三步就能恢復(參考文章),無需藉助第三方工具。a) 備份當前資料庫的事務日誌:BACKUP LOG [資料庫名] TO disk= N"備份檔名" WITH NORECOVERYb) 恢復一個誤刪除之前的完全備份:RESTORE DATABASE [資料庫名] FROM DISK = N"完全備份檔名" WITH NORECOVERY, REPLACEc) 將資料庫恢復至誤刪除之前的時間點:RESTORE LOG [資料庫] FROM DISK = N"第一步的日誌備份檔名" WITH STOPAT = N"誤刪除之前的時間點" , RECOVERY情況二、如果第1個前提條件不存在,第2個前提條件存在,需要藉助第三方工具。情況三、如果第2個前提條件不存在,無法恢復。所以,一定要將資料庫恢復模式設定為“完整(Full)”。我現在面臨的是第二種情況,需要找第三方工具。開始找的是Log Explorer for SQL Server,不支援SQL Server 2008。後來找的是SQL Log Rescue,也不支援SQL Server 2008。接著找到的是SysTools SQL Recovery,支援SQL Server 2008,但需要購買,Demo版並沒有資料恢復功能。最終在officerecovery.com上找到Recovery for SQL Server,雖然也是商業軟體,需要購買,但Demo版可以恢復資料,只要資料庫檔案不超過24Gb。幸好朋友的資料庫檔案不大,用它完成了誤刪除資料的恢復。

  • 中秋節和大豐收的關聯?
  • 右手得了網球肘,左手還可以練啞鈴嗎?