在 SharePoint Server 中备份 Search Service 应用程序

适用于:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

可使用SharePoint 管理中心网站、Microsoft PowerShell 或 SQL Server 工具在服务器场中备份 Search Service 应用程序。 您使用哪一种备份工具取决于您已部署的环境的类别、您的备份计划所需的内容以及您与您的组织之间签订的服务级别协议。

开始之前

建议您定期进行服务器场级别的备份。 但是,企业或 IT 要求可能需要您备份搜索服务和相关资源。 定期备份搜索系统会降低因硬件故障、断电或其他问题而可能导致的丢失数据的概率。 该过程非常简单,有助于确保在必要时可恢复组成搜索系统的数据和配置。

在开始此操作之前,请查看以下信息:

  • 您必须在本地计算机或网络上创建一个用于存储备份的文件夹。 为了获得更佳的性能,建议您先备份到本地计算机,然后再将备份文件移动到网络文件夹。

  • 不能使用 SQL Server 工具或 Data Protection Manager 备份所有搜索组件。

  • 备份搜索不会影响服务器场的状态。 但是,此操作需要使用资源。 因此,搜索备份在运行时可能会影响服务器场的性能。 在服务器场利用率最低时备份搜索,可避免出现性能问题。

备份同义词库文件

同义词库文件用于指定搜索查询中出现的词语或短语的同义词。 您可以在 SharePoint Server 之外的系统中创建和维护同义词库文件,然后再将它们导入 SharePoint Server 以使其可用于搜索系统。 因此,同义词库文件不包含在下述 SharePoint Server 搜索备份过程中。

若要备份同义词库文件,必须确保在要用于创建和维护同义词库文件的外部系统的备份过程中包括这些文件。

使用 PowerShell 在 SharePoint Server 中备份搜索

可以使用 PowerShell 手动备份搜索,或者将搜索作为按既定时间间隔运行的脚本的一部分。 此过程会备份所有搜索组件,包括数据库、搜索服务配置以及所有索引文件。

使用 PowerShell 备份搜索

  1. 确认您具有以下成员身份:

    • SQL Server 实例上的 securityadmin 固定服务器角色。

    • 要更新的所有数据库上的 db_owner 固定数据库角色。

    • 运行 PowerShell cmdlet 的服务器上的 Administrators 组。

    • SharePoint 组“Farm Administrators”。

    管理员可使用 Add-SPShellAdmin cmdlet 来授予使用 SharePoint Server 产品 cmdlet 的权限。

    注意

    [!注意] 如果您不具有这些权限,请联系您的安装管理员或 SQL Server 管理员来请求权限。 有关 PowerShell 权限的其他信息,请参阅 Add-SPShellAdmin

  2. 启动 SharePoint 命令行管理程序。

  3. 在 PowerShell 命令提示符处,键入以下命令:

    Backup-SPFarm -Directory <BackupFolder> -BackupMethod {Full | Differential} -Item "Farm\Shared Services\Shared Services Applications\<SearchServiceApplicationName>" [-Verbose]
    

    其中:

    • <BackupFolder> 是用于存储备份文件的文件夹的路径。

    • <SearchServiceApplicationName> 是要备份的 Search Service 应用程序的名称。

    注意

    如果是初次备份服务器场,则必须使用“完整”选项。 必须先执行完整备份,然后才能执行差异备份。 To view the progress of the backup operation, use the Verbose parameter. The Differential option only applies to the search databases. The search index files are always fully backed up, even when you use the Differential option.

有关详细信息,请参阅 Backup-SPFarm

注意

[!注意] 我们建议您在执行命令行管理任务时使用 Windows PowerShell。 Stsadm 命令行工具已被弃用,仍然包含该工具是为了支持与之前产品版本的兼容性。

使用管理中心在 SharePoint Server 中备份搜索

您可以使用管理中心备份搜索。 此过程会备份所有搜索组件,包括数据库、搜索服务配置以及所有索引文件。

使用管理中心备份搜索的具体步骤

  1. 确认执行此过程的用户帐户是 SharePoint 组“服务器场管理员”的成员。

  2. 启动“管理中心”。

  3. 在管理中心主页上的“备份和还原”部分,单击“执行备份”

  4. On the Perform a Backup — Step 1 of 2: Select Component to Back Up page, in the list of components, expand Shared Services and then expand Shared Services Applications to view the list of service applications in the farm. Select the search service application from the list of components, and then click Next.

    注意

    [!注意] 搜索服务应用程序可能由若干组件组成。 您必须选择顶级组件。 默认情况下,服务应用程序命名为"搜索服务应用程序"。

  5. 在“开始备份 - 第 2 步(共 2 步): 选择备份选项”页上,在“备份类型”部分,选择“完整”或“差异”

    注意

    If you are backing up search for the first time, you must use the Full option. 必须先执行完整备份,然后才能执行差异备份。 The Differential option only applies to the search databases. The search index files are always fully backed up, even when you use the Differential option.

  6. 在“备份文件位置”部分的“备份位置”框中,键入备份文件夹的路径,然后单击“开始备份”

  7. You can view the general status of all backup jobs at the top of the Backup and Restore Job Status page in the Readiness section. 可以在该页下部的“备份”部分查看当前备份作业的状态。 The status page updates every 30 seconds automatically. You can manually update the status details by clicking Refresh. 备份和恢复是定时服务作业。 Therefore, it might take several seconds for the backup to start.

    If you receive any errors, you can review them in the Failure Message column of the Backup and Restore Job Status page. 您还可以在步骤 6 中指定的 UNC 路径下的 Spbackup.log 文件中找到更多详细信息。

不能使用 SQL Server 工具备份整个 SharePoint Search Service 应用程序。 不过,可以使用 SQL Server 工具备份与 Search Service 应用程序关联的数据库。 若要备份整个 Search Service 应用程序,请使用 PowerShell 或管理中心。

若要使用 SQL Server 备份与 Search Service 应用程序关联的数据库,必须执行以下步骤:

  1. 暂停 Search Service 应用程序。

  2. 使用 SQL Server 工具备份所有 Search Service 应用程序数据库。

  3. 继续运行 Search Service 应用程序。

使用 PowerShell 暂停 Search Service 应用程序

  1. 确认您具有以下成员身份:

    • SQL Server 实例上的 securityadmin 固定服务器角色。

    • 要更新的所有数据库上的 db_owner 固定数据库角色。

    • 运行 PowerShell cmdlet 的服务器上的 Administrators 组。

    管理员可使用 Add-SPShellAdmin cmdlet 来授予使用 SharePoint 2016 cmdlet 的权限。

    注意

    [!注意] 如果您不具有这些权限,请联系您的安装管理员或 SQL Server 管理员来请求权限。 有关 PowerShell 权限的其他信息,请参阅 Add-SPShellAdmin

  2. 启动 SharePoint 命令行管理程序。

  3. 在 PowerShell 命令提示符处,键入以下命令:

    $ssa = Get-SPEnterpriseSearchServiceApplication -Identity <SearchServiceApplicationName> 
    Suspend-SPEnterpriseSearchServiceApplication -Identity $ssa
    

    其中:

    • <SearchServiceApplicationName> 是要备份的 Search Service 应用程序的名称。

使用 SQL Server 工具备份所有 Search Service 应用程序数据库

  1. 确认执行此过程的用户帐户是存储每个数据库的数据库服务器上 SQL Server db_backupoperator 固定数据库角色的成员。

  2. 启动 SQL Server Management Studio 并连接到数据库服务器。

  3. In Object Explorer, expand Databases.

  4. 右键单击要备份的数据库,指向“任务”,然后单击“备份”

  5. 在“ 备份数据库 ”对话框中,确认数据库名称。

  6. Next, select the kind of backup that you want to perform from the Backup type list. For more information about which backup type to use, see Recovery Models (SQL Server).

  7. 在“备份组件”区域中,单击“数据库”

  8. 在“名称”文本框中,为备份集使用提供的默认名称或指定一个名称。

  9. 在“目标”区域中指定要将备份存储在何处。

  10. 单击“确定”以备份数据库。

  11. 对以下数据库重复步骤 1-10:

  • 搜索管理

  • 分析报告

  • 爬网

  • 链接

使用 PowerShell 恢复 Search Service 应用程序

  1. 确认您具有以下成员身份:
  • SQL Server 实例上的 securityadmin 固定服务器角色。

  • 要更新的所有数据库上的 db_owner 固定数据库角色。

  • 运行 PowerShell cmdlet 的服务器上的 Administrators 组。

    管理员可以使用 Add-SPShellAdmin cmdlet 授予使用 SharePoint Server cmdlet 的权限。

    注意

    [!注意] 如果您不具有这些权限,请联系您的安装管理员或 SQL Server 管理员来请求权限。 有关 PowerShell 权限的其他信息,请参阅 Add-SPShellAdmin

  1. 启动 SharePoint 命令行管理程序。

  2. 在 PowerShell 命令提示符处,键入以下命令:

    $ssa = Get-SPEnterpriseSearchServiceApplication -Identity <SearchServiceApplicationName> 
    Resume-SPEnterpriseSearchServiceApplication -Identity $ssa
    

    其中:

    • <SearchServiceApplicationName> 是 Search Service 应用程序的名称。

另请参阅

概念

在 SharePoint Server 中还原 Search Service 应用程序