比方說,我從備份中恢復數據庫(如db1
),然後修改db1
中的幾個表。此時,如果我想要擺脫這些變化並恢復到恢復狀態,我該怎麼做?目前,我正在從同一個備份(backup1.bak
)創建一個新數據庫(db2
),這顯然效率不高。有人可以建議如何撤消自上次恢復以來db1中的更改嗎?撤消自上次恢復以來SQL Server數據庫中的更改
PS:我使用的SQL Server 2008 R2。
比方說,我從備份中恢復數據庫(如db1
),然後修改db1
中的幾個表。此時,如果我想要擺脫這些變化並恢復到恢復狀態,我該怎麼做?目前,我正在從同一個備份(backup1.bak
)創建一個新數據庫(db2
),這顯然效率不高。有人可以建議如何撤消自上次恢復以來db1中的更改嗎?撤消自上次恢復以來SQL Server數據庫中的更改
PS:我使用的SQL Server 2008 R2。
要恢復你可以再次從備份WITH REPLACE, RECOVERY
簡單地恢復數據庫。
還原數據庫,create a database snapshot後。
要撤消更改,revert your database back to your snapshot。
這將讓你不必守住你的.bak文件......如果你的數據庫是相對於你會做你的數據庫的變化量較大,這可能是更有效的。
當然要記住,這是一個企業的特徵,所以只適用於開發,Enterprise和評估版(和數據中心,但該版本已經退休的SQL Server 2012中的)。 –
謝謝!我將通過鏈接中的信息 –
另一件需要注意的事情是,如果數據庫中有任何filetables/filegroups,則不能使用數據庫快照恢復功能:(我很遺憾地知道了這一點: –