適用於:SQL Server
本主題描述 SQL Server 中數個功能的備份和還原考量。 這些功能包括:檔案還原和資料庫啟動、線上還原和停用的索引、資料庫鏡像,以及分次還原和全文檢索索引。
檔案還原與資料庫啟動
本節僅與包含多個檔案群組的 SQL Server 資料庫有關。
注意
當資料庫啟動時,只有在資料庫關閉時其檔案仍在線上的檔案群組才會復原並回到線上。
如果在資料庫啟動期間發生問題,復原會失敗,且會將資料庫標示為 SUSPECT。 如果將問題隔離到檔案,資料庫管理員就可以使檔案離線,並嘗試重新啟動資料庫。 要離線存取檔案,您可以使用以下 ALTER DATABASE 陳述:
ALTER DATABASE database_name MODIFY 檔案(名稱 ='檔名',離線)
如果啟動成功,任何包含離線檔案的檔案群組都會保持離線。
線上還原與已停用索引
本節僅與包含多個檔案群組 (在簡單復原模式下,至少有一個唯讀檔案群組) 的資料庫有關。
在這些案例中,如果資料庫在線上,則只有在保有索引任一部分的所有檔案群組都在線上時,才可以建立、卸除、啟用或停用索引。
如需還原離線檔案群組的相關資訊,請參閱線上還原 (SQL Server)。
資料庫鏡像與備份和還原
本節僅與包含多個檔案群組的完整模式資料庫有關。
注意
未來的 Microsoft SQL Server 版本將移除資料庫鏡像功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 Always On 可用性群組。
資料庫鏡像是一種用來提高資料庫可用性的解決方案。 資料庫鏡像是以個別資料庫為單位實作,且僅適用於採用完整復原模式的資料庫。 如需詳細資訊,請參閱資料庫鏡像 (SQL Server)。
注意
若要散發資料庫中檔案群組子集的副本,請使用複寫:請只複寫檔案群組中您要複製到其他伺服器的物件。 如需複寫的詳細資訊,請參閱 SQL Server 複寫。
建立鏡像資料庫
鏡像資料庫是在鏡像伺服器上,以 WITH NORECOVERY 選項還原主體資料庫的備份所建立。 還原必須保留相同的資料庫名稱。 如需詳細資訊,請參閱準備鏡像資料庫以進行鏡像 (SQL Server)。
您可以使用分次還原順序來建立鏡像資料庫 (只要有支援)。 不過,要等到還原了所有檔案群組,而且通常還要在時間點上將記錄備份還原到夠接近主體資料庫的時間點之後,才能開始進行鏡像。 如需詳細資訊,請參閱分次還原 (SQL Server)。
鏡像期間備份與還原的限制
當資料庫鏡像工作階段處於作用中時,適用下列限制:
不允許備份和還原鏡像資料庫。
允許備份主要資料庫,但不允許執行 BACKUP LOG WITH NORECOVERY。
不允許還原主體資料庫。
分次還原和全文檢索索引
本節只與包含多個檔案群組的資料庫有關,而在簡單模式資料庫中僅與唯讀檔案群組相關。
全文檢索索引會儲存在資料庫檔案群組中,而且可能會受到分次還原的影響。 如果全文檢索索引與任何相關聯的資料表資料位於相同的檔案群組中,分次還原就會依照預期方式運作。
注意
若要檢視包含全文檢索索引之檔案群組的檔案群組識別碼,請選取 sys.fulltext_indexes的 data_space_id 資料行。
不同檔案群組中的全文索引和資料表
如果全文檢索索引與所有相關聯的資料表資料位於不同的檔案群組中,則分次還原的行為會取決於第一個還原且上線的檔案群組而定:
如果包含全文檢索索引的檔案群組在包含相關聯資料表資料的檔案群組之前還原並上線,一旦全文檢索索引上線時,全文檢索搜尋就會依照預期方式運作。
如果包含資料表資料的檔案群組在包含全文檢索索引的檔案群組之前還原並上線,則全文檢索行為可能會受到影響。 這是因為在索引上線之前,觸發母體擴展、重建目錄或重新組織目錄的 Transact-SQL 陳述式都會失敗。 這些陳述包括 CREATE FULLTEXT INDEX、 ALTER FULLTEXT INDEX、 DROP FULLTEXT INDEX、 ALTER FULLTEXT CATALOG和 。
在此情況下,下列因素就很重要:
如果全文檢索索引已啟用變更追蹤,在索引檔案群組恢復上線之前,使用者執行的 DML 作業將會失敗。 此外,在索引檔案群組上線之前,刪除作業也會失敗。
無論變更追蹤與否,全文檢索查詢都會失敗,因為無法使用索引。 如果在包含全文檢索索引的檔案群組離線時,嘗試全文檢索查詢,將會傳回錯誤。
只有當狀態函數 (例如 FULLTEXTCATALOGPROPERTY) 不需要存取全文檢索索引時,這些函數才會成功。 例如,存取任何線上全文中繼資料都會成功,但 uniquekeycount, itemcount 會失敗。
在全文檢索索引檔案群組還原並上線之後,索引資料與資料表資料就會一致。
一旦基底資料表檔案群組和全文檢索索引檔案群組皆已上線,任何已暫停的全文檢索填入作業便會恢復。
檔案備份以及還原與壓縮
SQL Server 支援唯讀檔案群組及唯讀資料庫的 NTFS 檔案系統資料壓縮。
在壓縮的 NTFS 檔案上支援還原唯讀檔案群組中的檔案。 這些檔案群組的備份與還原,本質上與任何唯讀檔案群組相同,但有下列例外狀況:
將讀寫檔案 (包括讀寫資料庫的主要檔案或記錄檔) 還原至壓縮磁碟區會失敗,並顯示錯誤。
允許將唯讀資料庫還原至壓縮磁碟區。
注意
讀取/寫入資料庫的記錄檔絕不可放在壓縮檔案系統上。