分次還原和全文檢索索引

 這個主題只與包含多個檔案群組 (如果是簡單模式資料庫,則只有唯讀檔案群組) 的資料庫有關。

全文檢索索引會儲存在資料庫檔案群組中,而且可能會受到分次還原的影響。如果全文檢索索引與任何相關聯的資料表資料位於相同的檔案群組中,分次還原就會依照預期方式運作。

[!附註]

若要檢視包含全文檢索索引之檔案群組的檔案群組識別碼,請選取 sys.fulltext_indexes 的 data_space_id 資料行。

個別檔案群組中的全文檢索索引和資料表

如果全文檢索索引與所有相關聯的資料表資料位於不同的檔案群組中,則分次還原的行為會取決於第一個還原且上線的檔案群組而定:

  • 如果包含全文檢索索引的檔案群組在包含相關聯資料表資料的檔案群組之前還原並上線,一旦全文檢索索引上線時,全文檢索搜尋就會依照預期方式運作。

  • 如果包含資料表資料的檔案群組在包含全文檢索索引的檔案群組之前還原並上線,則全文檢索行為可能會受到影響。這是因為在索引上線之前,觸發母體擴展、重建目錄或重新組織目錄的 Transact-SQL 陳述式都會失敗。這些陳述式包括 CREATE FULLTEXT INDEX、ALTER FULLTEXT INDEX、DROP FULLTEXT INDEX 和 ALTER FULLTEXT CATALOG。

    在此情況下,下列因素就很重要:

    • 如果全文檢索索引具有變更追蹤,在索引檔案群組上線之前,使用者 DML 將會失敗。此外,在索引檔案群組上線之前,刪除作業也會失敗。

    • 無論變更追蹤與否,全文檢索查詢都會失敗,因為無法使用索引。如果在包含全文檢索索引的檔案群組離線時,嘗試全文檢索查詢,將會傳回錯誤。

    • 只有當狀態函數 (例如 FULLTEXTCATALOGPROPERTY) 不需要存取全文檢索索引時,這些函數才會成功。例如,存取任何線上全文檢索中繼資料都會成功,但是 uniquekeycount, itemcount 卻會失敗。

    在全文檢索索引檔案群組還原並上線之後,索引資料與資料表資料就會一致。

一旦資料表檔案群組和群組檢索索引檔案群組都上線時,任何暫停的全文檢索母體擴展就會繼續進行。