天天看點

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

原文: SQLServer資料庫差異備份

差異備份 (differential backup)定義

一種資料備份,基于完整資料庫或部分資料庫或一組資料檔案或檔案組(差異基準)的最新完整備份,并且僅包含自确定差異基準以來發生更改的資料。

使用SSMS資料庫管理工具進行資料庫差異備份

1、選擇資料庫-》右鍵點選-》選擇任務-》選擇備份。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

2、在備份資料庫彈出框中-》選擇備份類型為差異-》然後删除系統生成的目标檔案-》然後點選添加。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

3、在選擇備份目标彈出框中-》點選選擇備份路徑。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

4、在定位資料庫檔案彈出框中,先選擇需要備份的檔案路徑,然後資料備份檔案名,點選确定。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

 5、在備份資料庫彈出框,點選确定。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

6、檢視備份是否成功。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

使用SSMS資料庫管理工具進行資料庫差異還原

差異備份與還原須知:差異備份是上次完整備份之後發生改變的副本。是以還原是需要上次的完整備份和最近一次差異備份。差異備份有兩步操作,第一步為還原資料庫,第二步還原差異部分。

還原資料庫步驟

1、選擇資料庫-》右鍵點選-》選擇任務-》選擇還原-》選擇資料庫。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

2、在還原資料庫彈出框中-》先點選裝置-》再點選還原檔案路徑。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

3、在選擇備份裝置彈出框中-》點選添加檔案。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

4、在定位備份檔案彈出框中-》先選擇檔案夾-》再選擇要還原的檔案-》點選确定。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

5、進入還原模式。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

6、覆寫現有資料庫可不勾選-》選擇資料庫恢複模式為設定為NORecorvery。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

7、檢視資料庫狀态。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

還原差異檔案步驟

1、選擇要還原的資料庫-》右鍵點選-》選擇任務-》選擇還原-》選擇檔案和檔案組。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

2、在還原檔案和檔案組彈出框-》選擇裝置-》選擇檔案還原路徑。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

3、在選擇備份裝置彈出框-》選擇添加。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

4、在定位備份檔案彈出框-》選擇要還原的差異檔案-》點選确定。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

5、在還原檔案和檔案組彈出框-》選擇檔案-》點選選項。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

6、選擇恢複狀态-》點選确定。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

7、還原結果。

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結
SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

使用T-SQL腳本進行差異備份

文法:backup database 資料庫名 to disk=檔案路徑 with differential;

示例:backup database testss to disk='D:\SqlTest\backup\t3.bak' with differential;

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

使用T-SQL腳本進行差異還原

文法:第一步先指定資料庫恢複模式:restore database 資料庫名 from disk=資料庫檔案 with norecovery ;

           第二步再恢複差異備份:restore database 資料庫名 from disk=差異檔案 with recovery;

示例:第一步先恢複備份資料庫:restore database testss from disk='D:\SqlTest\backup\testss.bak' with norecovery ;

           第二步再恢複差異備份:restore database testss from disk='D:\SqlTest\backup\t3.bak' with recovery;

           (注意資料庫如果存在,可删除或者使用覆寫先有資料庫)

SQLServer資料庫差異備份差異備份 (differential backup)定義使用SSMS資料庫管理工具進行資料庫差異備份使用SSMS資料庫管理工具進行資料庫差異還原使用T-SQL腳本進行差異備份使用T-SQL腳本進行差異還原 總結

 總結

優點:1、與建立完整備份相比,建立差異備份的速度可能非常快。 差異備份隻記錄自差異備份所基于的完整備份後更改的資料。 這有助于頻繁地進行資料備份,減少資料丢失的風險。 但是,在還原差異備份之前,必須先還原其基準。 是以,從差異備份進行還原必然要比從完整備份進行還原需要更多的步驟和時間,因為這需要兩個備份檔案。

   2、如果資料庫的某個子集比該資料庫的其餘部分修改得更為頻繁,則差異資料庫備份特别有用。 在這些情況下,使用差異資料庫備份,您可以頻繁執行備份,并且不會産生完整資料庫備份的開銷。

   3、在完整恢複模式下,使用差異備份可以減少必須還原的日志備份的數量。

缺點:差異備份基于最後一次完整備份的差異,那麼,對于一個繁忙的資料庫,在一段時間内做了幾次差異備份,無論這中間有多少次Checkpoint,SQL Server依然将這些基于完整備份的差異頁面放入差異備份檔案,按道理來說,一個頁面在一次Checkpoint之後,如果沒有再發生任何修改,那麼是不需要放入差異備份檔案裡面的(如果是基于最後一次差異的差異),因為差異位圖無法基于差異的差異,這樣會導緻,有時候差異備份檔案比完整備份檔案還要大。