備份和還原 SQL Server 2008 全文檢索目錄
本主題說明如何備份和還原在 SQL Server 2008 中建立的全文檢索索引。在 SQL Server 2008 中,全文檢索目錄是邏輯概念,而且不會位於檔案群組中。因此,若要備份 SQL Server 2008 中的全文檢索目錄,您必須識別包含此目錄之全文檢索索引的每個檔案群組,然後逐一備份它們。
重要事項 |
---|
您可以在升級 SQL Server 2005 資料庫時,匯入全文檢索目錄。每個匯入的全文檢索目錄都是其檔案群組中的資料庫檔案。若要備份匯入的目錄,只要備份其檔案群組即可。如需詳細資訊,請參閱《SQL Server 2005 線上叢書》中的<備份與還原全文檢索目錄>。 |
備份和還原 SQL Server 2008 全文檢索目錄的索引包含下列步驟:
尋找全文檢索目錄的全文檢索索引
尋找包含全文檢索索引的檔案群組或檔案
備份全文檢索目錄的全文檢索索引
還原全文檢索索引
尋找全文檢索目錄的全文檢索索引
您可以使用下列 SELECT 陳述式 (從 sys.fulltext_indexes 和 sys.fulltext_catalogs 目錄檢視中選取資料行) 來擷取全文檢索索引的屬性。
USE AdventureWorks;
GO
DECLARE @TableID int;
SET @TableID = (SELECT OBJECT_ID('AdventureWorks.Production.Product'));
SELECT object_name(@TableID), i.is_enabled, i.change_tracking_state,
i.has_crawl_completed, i.crawl_type, c.name as fulltext_catalog_name
FROM sys.fulltext_indexes i, sys.fulltext_catalogs c
WHERE i.fulltext_catalog_id = c.fulltext_catalog_id;
GO
尋找包含全文檢索索引的檔案群組或檔案
建立全文檢索索引時,它會放置於下列其中一個位置:
使用者指定的檔案群組。
與基底資料表或檢視表相同的檔案群組 (若為非資料分割資料表)。
主要檔案群組 (若為資料分割資料表)。
[!附註]
如需有關建立全文檢索索引的詳細資訊,請參閱<CREATE FULLTEXT INDEX (Transact-SQL)>或<如何:建立全文檢索索引 (Visual Database Tools)>。
若要針對某個資料表或檢視表尋找全文檢索索引的檔案群組,請使用下列查詢,其中 <object_name> 是資料表或檢視表的名稱:
SELECT name FROM sys.filegroups f, sys.fulltext_indexes i
WHERE f.data_space_id = i.data_space_id
and i.object_id = object_id('object_name');
GO
備份全文檢索目錄的全文檢索索引
尋找包含全文檢索目錄之索引的檔案群組之後,您必須備份每個檔案群組。在備份程序期間,您可能無法卸除或加入全文檢索目錄。
檔案群組的第一個備份必須是完整檔案備份。建立了檔案群組的完整檔案備份之後,您就可以透過建立一系列的一或多個差異檔案備份 (以完整檔案備份為基礎),僅備份檔案群組中的變更。
備份檔案與檔案群組
還原全文檢索索引
還原備份的檔案群組就會還原全文檢索索引檔案,以及檔案群組中的其他檔案。根據預設,檔案群組會還原至備份檔案群組所在的磁碟位置。
如果建立備份時,全文檢索索引資料表已在線上,而且正在進行母體擴展,就會在還原之後繼續進行母體擴展。
還原檔案群組