Поделиться через


Резервное копирование и восстановление полнотекстовых каталогов и индексов

Область применения:SQL Server

В этой статье объясняется, как создать резервную копию и восстановить полнотекстовые индексы, созданные в SQL Server. В SQL Server полнотекстовый каталог представляет собой логическую концепцию и не находится в файловой группе. Поэтому для резервного копирования полнотекстового каталога в SQL Server необходимо определить каждую файловую группу, содержащую полнотекстовый индекс, принадлежащий каталогу. Затем необходимо создать резервные копии этих файловых групп, одну за другой.

Внимание

При обновлении базы данных SQL Server 2005 (9.x) можно импортировать полнотекстовые каталоги. Каждый импортированный полнотекстовый каталог является файлом базы данных в собственной файловой группе. Чтобы создать резервную копию импортированного каталога, создайте резервную копию файловой группы в электронной документации по SQL Server 2005 (9.x).

Резервное копирование полнотекстовых индексов полнотекстового каталога

Поиск полнотекстовых индексов полнотекстового каталога

Свойства полнотекстовых индексов можно получить с помощью инструкции SELECT , выбирающей столбцы из представлений каталога sys.fulltext_indexes и sys.fulltext_catalogs .

USE AdventureWorks2022;
GO

DECLARE @TableID AS INT;

SET @TableID = (SELECT OBJECT_ID('AdventureWorks2022.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 AS i, sys.fulltext_catalogs AS c
WHERE i.fulltext_catalog_id = c.fulltext_catalog_id;
GO

Поиск файловой группы или файла, содержащего полнотекстовый индекс

При создании полнотекстового индекса он помещается в одно из следующих расположений:

  • В указанной пользователем файловой группе.
  • В несекционированной таблице — в той же файловой группе, что и базовая таблица или представление.
  • Основная файловая группа для секционированной таблицы.

Примечание.

Сведения о создании полнотекстового индекса см. в разделе "Создание полнотекстовых индексов" и управление ими и CREATE FULLTEXT INDEX.

Чтобы найти файловую группу полнотекстового индекса таблицы или представления, можно использовать следующий запрос, в котором object_name — это имя таблицы или представления:

SELECT name
FROM sys.filegroups AS f, sys.fulltext_indexes AS i
WHERE f.data_space_id = i.data_space_id
      AND i.object_id = object_id('object_name');

Резервное копирование файловых групп, содержащих полнотекстовые индексы

После поиска файловых групп, содержащих индексы полнотекстового каталога, необходимо создать резервную копию каждой из файловых групп. Во время резервного копирования полнотекстовые каталоги могут не удаляться или добавляться.

При первом резервном копировании файловой группы необходимо создать полную резервную копию. После того как для файловой группы была создана полная резервная копия файла, резервное копирование можно выполнять, сохраняя только изменения в файловой группе путем создания ряда из нескольких разностных резервных копий файла, основанных на полной резервной копии файла.

Резервное копирование файлов и файловых групп

Восстановление полнотекстового индекса

Восстановление резервной копии файловой группы восстанавливает файлы полнотекстового индекса и другие файлы в файловой группе. По умолчанию файловая группа восстанавливается в том месте на диске, где была создана резервная копия.

Если полнотекстовая индексированная таблица была в сети, а население выполнялось при создании резервной копии, население возобновляется после восстановления.

Восстановление файловой группы