SQL Server 数据恢复
生活随笔
收集整理的這篇文章主要介紹了
SQL Server 数据恢复
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
配置SQL Server數據庫恢復模式(2種方法)
用T-SQL設置恢復模式你可以使用“ALTER DATABASE”命令加“SET RECOVERY”語句來修改數據庫的恢復模式。例如,下面的查詢語句把“AdventureWorks”數據庫的恢復模式設置為完全恢復模式。
ALTER DATABASE AdventureWorks SET RECOVERY FULL ; 你可以查詢“sys.databases”的目錄視圖,驗證數據庫的恢復模式狀態。語句如下: SELECT name, recovery_model, recovery_model_desc FROM sys.databases WHERE name = 'AdventureWorks' ;
你可以使用如下語句把數據庫設置為大批量操作模式或者簡單恢復模式,只需要在“”位置替換為你自己數據庫的名稱就可以了。 --Changing recovery model to Bulk-logged ALTER DATABASE AdventureWorks SET RECOVERY BULK_LOGGED ; --Changing recovery model to Simple ALTER DATABASE AdventureWorks SET RECOVERY SIMPLE ;
在創建新數據庫時,它會從模型數據庫中繼承恢復模式,默認是完全恢復模式。要修改默認恢復模式,你可以使用“ALTER DATABASE”語句修改模型數據庫的恢復模式。
請注意,如果打算維護一致的事務日志備份,就不能切換到簡單恢復模式,也不能從簡單恢復模式改為其它。
使用SQL Server管理工具(SSMS)修改恢復模式
你可以在SQL Server管理工具中修改數據庫的恢復模式。在對象瀏覽器中,右鍵單擊你的數據庫(在數據庫節點下),然后點擊屬性。在數據庫屬性對話框中,點擊選項標簽頁,然后修改恢復模式如下:
數據庫右鍵→屬性→選項→恢復模式
SQL Server 2008數據庫誤刪數據如何進行數據恢復
SQL Server中誤刪除數據的恢復本來不是件難事,從事務日志恢復即可。但是,這個恢復需要有兩個前提條件:1. 至少有一個誤刪除之前的數據庫完全備份。
2. 數據庫的恢復模式(Recovery mode)是“完整(Full)”。
針對這兩個前提條件,會有三種情況:
情況一、如果這兩個前提條件都存在,通過SQL語句只需三步就能恢復,無需借助第三方工具。
a) 備份當前數據庫的事務日志:BACKUP LOG [數據庫名] TO disk= N'備份文件名' WITH NORECOVERY
b) 恢復一個誤刪除之前的完全備份:RESTORE DATABASE [數據庫名] FROM DISK = N'完全備份文件名' WITH NORECOVERY, REPLACE
c) 將數據庫恢復至誤刪除之前的時間點: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。幸好朋友的數據庫文件不大,用它完成了誤刪除數據的恢復。
下面分享一下用Recovery for SQL Server進行恢復的操作步驟:
1. 運行Recovery for SQL Server
2. 點擊菜單中的 File > Recover,選擇要恢復的數據庫的數據文件(.mdf)
3. Next > Next,進入 Recovery Configuration 界面,選擇Custom(選擇了Custom才可以選擇從日志中恢復誤刪除的數據)。
4. Next 進入 Recovery options 窗口,選中 Search for deleted records,并選擇要恢復的數據庫的日志文件路徑(log file path)。
5. Next 并選擇目標文件夾(Destination folder),用于存放恢復過程中生成的SQL語句與bat文件。
6. 點擊Start,開始恢復操作(在上一步選擇的目標文件夾中生成相應的SQL文件與Bat文件),然后,出現 SQL Server Database Creation Utility 窗口。
7. Next,選擇被恢復數據存放的目標數據庫。
8. Next, 選擇 Import availiable data from both database and log files
9. Next, Next, 然后就完成數據的恢復!
附:
在完整恢復模式下將數據庫還原到故障點 (Transact-SQL):https://msdn.microsoft.com/zh-cn/library/ms175093.aspx 還原數據庫備份:https://msdn.microsoft.com/zh-cn/library/ms177429.aspx 完整數據庫還原(簡單恢復模式):https://msdn.microsoft.com/zh-cn/library/ms186216.aspx 完整數據庫還原(完整恢復模式):https://msdn.microsoft.com/zh-cn/library/ms187495.aspx 文件還原(簡單恢復模式):https://msdn.microsoft.com/zh-cn/library/ms187495.aspx 完整數據庫還原(完整恢復模式):https://msdn.microsoft.com/zh-cn/library/ms187495.aspx
RESTORE (Transact-SQL):https://msdn.microsoft.com/zh-cn/library/ms186858.aspx
總結
以上是生活随笔為你收集整理的SQL Server 数据恢复的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 优思学院:解答一位想学习六西格玛的学生的
- 下一篇: 在html创建色块,一道CSS题:不能改