變更資料庫的目標復原時間 (SQL Server)
本主題描述如何使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 2014 中設定 SQL Server 資料庫的目標復原時間變更。 根據預設,目標復原時間是0,而資料庫會使用 自動檢查點 (由 復原間隔 伺服器選項控制)。 將目標復原時間設定為大於 0 會導致資料庫使用 間接檢查點, 併為此資料庫建立復原時間上限。
注意
如果長時間執行的交易造成過多的復原次數,可能會超過目標復原時間設定針對給定資料庫所指定的上限。
若要變更目標復原時間,請使用: SQL Server Management Studio 或 Transact-SQL
開始之前
警告
針對間接檢查點 (部分機器翻譯) 設定之資料庫上的線上交易式工作負載可能會發生效能降低。 間接檢查點可確定中途分頁的數目,低於特定臨界值,如此即可在目標復原時間內完成資料庫的復原。 復原間隔組態選項會使用交易數目來判斷復原時間,而不是使用臟頁數的間接檢查點。 在收到大量 DML 作業的資料庫上啟用間接檢查點時,背景寫入器可開始積極排清磁碟的中途緩衝區,以確保執行復原所需的時間,落在資料庫所設的目標復原時間內。 這可能會在特定系統上造成額外的 I/O 活動,如果磁碟子系統運作超過或接近 I/O 閾值,可能會導致效能瓶頸。
安全性
權限
需要資料庫的 ALTER 權限。
使用 SQL Server Management Studio
變更目標復原時間
在 [物件總管] 中,連線至 SQL Server 資料庫引擎的執行個體,然後展開該執行個體。
以滑鼠右鍵按下您要變更的資料庫,然後按下 [ 屬性] 命令。
在 [ 資料庫屬性] 對話框中,按兩下 [ 選項 ] 頁面。
在 [復原] 面板中的 [目標復原時間 (秒)] 字段中,指定您要在此資料庫的復原時間上限秒數。
使用 TRANSACT-SQL
變更目標復原時間
連線到資料庫所在的 SQL Server 執行個體。
使用下列 ALTER DATABASE語句,如下所示:
=TARGET_RECOVERY_TIME target_recovery_time { SECONDS |MINUTES }
目標復原時間
當大於 0 時,指定當機時所指定資料庫的復原時間上限。SECONDS
指出 target_recovery_time 應以秒數表示。MINUTES
指出 target_recovery_time 應以分鐘數表示。下列範例會將 AdventureWorks2012 資料庫的目標復原時間設定為
60
秒。ALTER DATABASE AdventureWorks2012 SET TARGET_RECOVERY_TIME = 60 SECONDS;