备份自定义项 (SharePoint Foundation 2010)

 

适用于: SharePoint Foundation 2010

上一次修改主题: 2016-11-30

本文介绍如何备份对Microsoft SharePoint Foundation 2010 网站执行的自定义。

可对网站执行以下类型的自定义项:

  • 将自定义项打包为解决方案(.wsp 文件)。解决方案包含开发的网站元素,并且通常由开发人员创建。开发的网站元素包括:

    • Web 部件

    • 工作流

    • 网站和列表定义

    • 文档转换器

    • 事件接收器

    • 计时器作业

    • 程序集

  • 创作的网站元素,通常由网站设计者创建,未经明确编译,并且驻留在内容数据库中。创作的网站元素包括:

    • 母版页

    • 级联样式表

    • 表单

    • 布局页

  • 对 Web.config 文件所做的更改

  • 第三方解决方案及其关联的二进制文件和注册表项(例如 IFilter)

  • 通过直接在浏览器中编辑网站而创建的更改

  • 未打包为解决方案的已开发自定义项

以上各种类型的自定义项需要不同类型的备份。

本文内容:

  • 备份解决方案包

  • 备份创作的网站元素

  • 备份工作流

  • 备份对 Web.config 文件所做的更改

  • 备份第三方产品

  • 备份通过直接编辑所做的更改

  • 备份未打包为解决方案的已开发自定义项

备份解决方案包

可通过使用 Microsoft SharePoint Designer 2010 或 Microsoft Visual Studio 2010 创建解决方案包。强烈建议将所有自定义项都部署为解决方案包。

解决方案包是可部署且可重用的文件,可包含一组适用于网站的功能、网站定义和程序集,并且您可以单独启用或禁用这些功能、网站定义和程序集。解决方案包可包含 Web 部件、网站或列表定义、自定义列、新内容类型、自定义字段、自定义操作、编码工作流或工作流活动和条件。

您用来备份解决方案包的方法取决于自定义项是部署为受信任解决方案 还是沙盒解决方案

受信任解决方案是服务器场管理员部署的解决方案包。它们部署到整个服务器场,并且可用于服务器场内的任何网站。受信任解决方案存储在配置数据库中。当使用 SharePoint Foundation 2010 备份来备份服务器场时,将对受信任解决方案进行备份并将其包含到仅配置备份中。也可以作为一个组备份或单独备份各个受信任解决方案。受信任解决方案在备份层次结构中是可见的。

沙盒解决方案是网站集管理员可以部署到单个网站集的解决方案包。沙盒解决方案存储在与解决方案包部署到的网站集关联的内容数据库中。它们包含在 SharePoint Foundation 2010 服务器场、Web 应用程序、内容数据库和网站集备份中,但在备份层次结构中不可见,并且无法单独选择或备份。

对于受信任解决方案和沙盒解决方案,均建议您保存原始 .wsp 文件以及用于构建 .wsp 文件的源代码的备份。

使用管理中心备份受信任解决方案

  1. 确保执行此过程的用户帐户是 Farm Administrators 组的成员。

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

  3. 在“执行备份 - 第 1步(共 2 步):选择要备份的组件”页上,选择“解决方案”,然后单击“下一步”。

    如果只需要备份单个解决方案,则还可选择单个解决方案。

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

    备注

    如果是首次备份解决方案,则必须使用“完整”选项。必须先执行一次完整备份,然后才能执行差异备份。

  5. 在“备份文件位置”部分,键入备份文件夹的通用命名约定 (UNC) 路径,然后单击“开始备份”。

  6. 您可以在“备份和还原作业状态”页顶部的“准备情况”部分查看所有备份作业的常规状态。在该页下半部分的“备份”部分查看当前备份作业的状态。状态页每 30 秒自动更新一次。您可以单击“刷新”手动更新状态详细信息。备份和恢复是定时服务作业。因此,可能需要几秒钟才会开始备份。

    如果出现任何错误,请查看“备份和还原作业状态”页的“失败消息”列。您还可以在步骤 4 中指定的 UNC 路径内的 Spbackup.log 文件中找到更多详细信息。

使用 Windows PowerShell 备份受信任的解决方案

  1. 验证您是否满足以下最低要求:请参阅 Add-SPShellAdmin

  2. 在“开始”菜单上,单击“所有程序”。

  3. 单击“Microsoft SharePoint 2010 产品”。

  4. 单击“SharePoint 2010 Management Shell”。

  5. 在 Windows PowerShell 命令提示符处,键入以下命令备份服务器场中的所有解决方案。若要备份单个解决方案,请将该解决方案的名称添加到项目路径“farm\solutions”。

    Backup-SPFarm -backupmethod full -directory <UNC location> -item "farm\solutions" 
    

    其中:

    • <UNC location> 是要备份到的目录的 UNC 位置。

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

备注

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

备份沙盒解决方案

不能只备份沙盒解决方案,而是必须备份与沙盒解决方案关联的服务器场、Web 应用程序或内容数据库。有关这些备份方法的详细信息,请参阅相关内容。

备份创作的网站元素

不能只备份创作的网站元素,而是必须备份与创作的网站元素关联的服务器场、Web 应用程序或内容数据库。有关这些备份方法的详细信息,请参阅相关内容。

备份工作流

工作流是一种可以备份的自定义项的特例。请确保您的备份和恢复计划可处理符合您的环境的以下任一情形:

  • 声明性工作流(例如在 Microsoft SharePoint Designer 2010 中创建的工作流)存储在它们要部署到的网站集的内容数据库中。备份内容数据库可保护这些工作流。

  • 自定义声明性工作流操作的相应组件位于以下三个位置:

    1. 操作的 Visual Studio 2010 程序集存储在全局程序集缓存 (GAC) 中。

    2. XML 定义文件(.ACTIONS 文件)存储在 14\TEMPLATE\<LCID>\Workflow 目录中。

    3. 用于将操作标识为已授权类型的 XML 条目存储在使用该条目的 Web 应用程序的 Web.config 文件中。

    如果服务器场工作流使用自定义操作,则应使用文件备份系统来保护这些文件和 XML 条目。与 SharePoint Foundation 功能(如 Web 部件和事件接收器)类似,恢复后,应将这些文件重新应用到服务器场。

  • 依赖自定义代码的工作流(例如,使用 Visual Studio 2010 创建的工作流)存储在两个位置。工作流的 Visual Studio 2010 程序集存储在 GAC 中,XML 定义文件存储在 Features 目录中。这与其他类型的 SharePoint Foundation 功能(如 Web 部件和事件接收器)相同。如果工作流是作为解决方案包的一部分安装的,则备份服务器场、Web 应用程序、内容数据库或网站集可保护这些工作流。

  • 如果您所创建的自定义工作流与部署该工作流的网站集之外的其他网站集交互,则必须同时备份这两个网站集才能保护该工作流。这包括写入其他网站集中的历史记录列表或其他自定义列表的工作流。执行服务器场备份足以备份服务器场中的所有网站集以及与这些网站集关联的所有工作流。

  • 必须单独备份和还原尚未部署的工作流。开发新工作流但尚未将其部署到 SharePoint Foundation 服务器场时,请确保使用文件系统备份应用程序备份存储工作流项目文件的文件夹。

备份对 Web.config 文件所做的更改

SharePoint Foundation 2010 的常见自定义操作是更改 Web.config 文件。强烈建议您通过使用管理中心或 SharePoint Foundation 2010 API 和对象模型来更改 Web.config 文件。由于这些更改存储在配置数据库中,因此可从服务器场或仅配置备份恢复它们。

不是通过使用管理中心或 SharePoint Foundation 2010 API 和对象模型对 Web.config 文件进行的更改应使用文件系统备份加以保护。

备注

如果使用基于表单的身份验证,则 Web.config 文件中的提供程序注册是手动的,并且不受 SharePoint Foundation 2010 备份的保护。在此情形下,请确保使用文件系统备份来备份 Web.config 文件。

备份第三方产品

如果第三方产品部署为解决方案包,则它们受 SharePoint Foundation 2010 备份的保护。建议您保留安装所需的所有原始文件、分发介质、文档和许可证及产品密钥。

备份通过直接编辑所做的更改

可能很难备份通过在浏览器中直接编辑而直接对网站所做的更改。下表描述了针对特定对象的备份策略。

编辑的对象 备份策略

列表

使用 SharePoint Designer 2010 并另存为模板。有关详细信息,请参阅将 SharePoint 网站另存为模板 (https://go.microsoft.com/fwlink/?linkid=199515&clcid=0x804)。

网站

使用 SharePoint Designer 2010 并另存为模板。有关详细信息,请参阅将 SharePoint 网站另存为模板 (https://go.microsoft.com/fwlink/?linkid=199515&clcid=0x804)。

网站集

使用网站集备份。有关详细信息,请参阅备份网站集 (SharePoint Foundation 2010)

备份未打包为解决方案的已开发自定义项

备份未部署为解决方案包的已开发自定义项可能是个复杂的过程,原因是自定义文件可能并未存储在标准化的位置,并且 SharePoint Foundation 2010 不会自动备份它们。

请与开发团队或自定义项供应商联系,以确定自定义项是否涉及位于其他位置的额外加载项软件或文件。建议使用文件系统备份解决方案来备份这些目录。下表列出了已开发自定义项在 Web 服务器上的通常存储位置。

位置 描述

%COMMONPROGRAMFILES%\Microsoft Shared\Web Server Extensions\14

经常更新的文件、自定义程序集、自定义模板、自定义网站定义

Inetpub

IIS 虚拟目录的位置

%WINDIR%\Assembly

全局程序集缓存 (GAC):操作系统中一个受保护的位置,将在此位置安装 Microsoft .NET Framework 代码程序集以提供完全的系统访问权限

相关内容

资源中心

SharePoint Server 2010 的业务连续性管理:备份、恢复、可用性和灾难恢复(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=199235&clcid=0x804)(该链接可能指向英文页面)

IT 专业人员内容

部署自定义项 - 概述 (SharePoint Foundation 2010)

还原自定义项 (SharePoint Foundation 2010)

备份服务器场 (SharePoint Foundation 2010)

备份服务器场配置 (SharePoint Foundation 2010)

备份 Web 应用程序 (SharePoint Foundation 2010)

备份内容数据库 (SharePoint Foundation 2010)

备份网站集 (SharePoint Foundation 2010)

开发人员内容

使用解决方案 (MSDN) (https://go.microsoft.com/fwlink/?linkid=156638&clcid=0x804)

沙盒解决方案 (MSDN) (https://go.microsoft.com/fwlink/?linkid=199517&clcid=0x804)