復原到特定時間
此主題僅與使用完整或大量記錄復原模式的 SQL Server 資料庫有關。
在大量記錄復原模式下,如果記錄備份包含大量記錄的變更,則時間點復原不可能復原至該備份內的時間點。資料庫必須復原至交易記錄備份的結尾。
若要還原至特定時間
- 如何:還原到某個時間點 (SQL Server Management Studio)
- 如何:還原到某個時間點 (Transact-SQL)
- 如何:還原到失敗點 (Transact-SQL)
- ToPointInTime (SMO)
復原到特定時間的 Transact-SQL 語法
附註: |
---|
指定特定時間或標示之交易的語法與 Microsoft SQL Server 2000 相同,但現在可套用至 RESTORE DATABASE 和 RESTORE LOG。 |
為了將資料庫還原到特定的時間點,RESTORE 陳述式提供 STOPAT 選項,這通常會在還原記錄備份時使用。
基本語法如下:
RESTORE LOG database_name FROM <backup_device> WITH STOPAT =time, RECOVERY…
復原點是在由 <time> 指定的 datetime 值當時或之後所發生的最近一次交易認可。
若只要還原特定時間點之前所做的修改,請為您要還原的每個備份指定 WITH STOPAT =<time>。這樣可確保您不會還原到超過目標時間。
一般而後言,時間點還原順序涉及下列階段:
- 在尚未復原資料庫的情況下,還原上一次的完整資料庫備份,若上次有差異資料庫備份則一併還原 (RESTORE DATABASE <database_name> FROM <backup_device> WITH NORECOVERY)。
- 依相同順序 (建立備份的順序) 套用每個交易記錄備份,並指定預計要停止還原記錄的時間 (RESTORE DATABASE <database_name> FROM <backup_device> WITH STOPAT**=time,** RECOVERY)。
如需詳細資訊,請參閱<將資料庫還原到備份中的時間點>。
請參閱
概念
套用交易記錄備份
使用標示的交易 (完整復原模式)
瞭解在 SQL Server 中還原和復原備份的運作方式
其他資源
backupset (Transact-SQL)
RESTORE (Transact-SQL)
RESTORE HEADERONLY (Transact-SQL)
實作 SQL Server 資料庫的還原實例
將資料庫還原到備份中的時間點
使用 SQL Server 資料庫的還原順序