如何:还原 Team Foundation 数据

更新:2007 年 11 月

本主题介绍如何将备份中的数据还原到生成该备份的 Team Foundation 数据层服务器。例如,您可能需要将损坏的数据层服务器还原到其已知的最后良好状态。若要执行本主题中的过程,您的服务器硬件必须能够正常工作。如果必须将数据还原到其他服务器,请参见如何:将 Team Foundation Server 数据还原到其他服务器

本主题中的过程针对的是 Team Foundation Server 双服务器部署中的数据层服务器和应用层服务器。对于单服务器部署,请在运行 Team Foundation Server 的服务器上执行所有过程。如果组件部署到了两台以上的服务器上,则必须在相应的服务器上执行每个组件的步骤。例如,SQL Server Reporting Services 可能部署到了第三台服务器上。有关每台服务器上可能部署了哪些组件的更多信息,请参见 Team Foundation Server 安全结构

说明:

还原数据时,不需要还原基于每个团队项目的数据自动生成的网站。

必需的权限

若要执行此过程,您必须是数据层服务器上“Administrators”安全组的成员。您还必须是数据层服务器上“SQL Server System Administrator”安全组的成员,或者“SQL Server 执行备份和创建维护计划”权限必须设置为“允许”。有关更多信息,请参见 Team Foundation Server 权限

除了这些权限,对于运行 Windows Server 2008 或 Windows Vista 的计算机,您可能还需要满足以下要求:

  • 若要使用命令行过程,您可能需要通过以下操作使用提升的权限打开命令提示窗口:单击“开始”,右击“命令提示符”,再单击“以管理员身份运行”。

  • 若要使用需要 Internet Explorer 的过程,您可能需要通过以下操作以管理员身份启动 Internet Explorer:单击“开始”,单击“所有程序”,右击“Internet Explorer”,再单击“以管理员身份运行”。

  • 若要编辑 web.config 文件,您可能需要通过以下操作以管理员身份启动文本编辑器:单击“开始”,单击“所有程序”,右击所需编辑器,再单击“以管理员身份运行”。

  • 若要访问 Reporting Services 的报表管理器、报表或网站,您可能需要将这些站点添加到 Internet Explorer 的受信任站点列表中,或者以管理员身份启动 Internet Explorer。

有关更多信息,请参见 Microsoft 网站

若要还原 Team Foundation 数据,必须执行以下过程:

  1. 停止 Team Foundation Server 使用的服务

  2. 还原 Team Foundation 数据库

  3. 重新生成 Team System 多维数据集

  4. (可选)还原其他数据(例如,其他的 SQL Server 数据库或 SharePoint 站点)

  5. 删除版本控制缓存

  6. 重新启动 Team Foundation Server 使用的服务

  7. (可选)更新 Team Foundation Server 服务帐户的安全标识符 (SID)

  8. (可选)更新创建项目时所用帐户的安全标识符 (SID)

  9. 刷新客户端计算机上的数据缓存

Team Foundation 的数据层包括一组 SQL Server 数据库,其中一些数据库用于团队项目的网站。下表列出了 Team Foundation 的数据库:

数据库

说明

ReportServer

包含 Reporting Services 的报表和报表设置。

ReportServerTempDB

临时存储运行 Reporting Services 的特定报表时所使用的信息。

STS_Config_TFS 或 WSS_Config

包含所有站点、内容数据库、站点模板、自定义 Web 部件以及 SharePoint 产品和技术使用的其他设置的列表。此数据库是 SharePoint 产品和技术的配置数据库。

STS_Content_TFS 或 WSS_Content

包含团队的 SharePoint 站点的内容。此数据库是 SharePoint 产品和技术的内容数据库。

说明:

包含 SharePoint 产品和技术数据的数据库的名称将随着两个因素而变化:一是所安装的 SharePoint 产品和技术的版本,二是安装人员是否对该名称进行了自定义。此外,如果 SharePoint 产品和技术安装在与 Team Foundation Server 不同的服务器上,这些数据库可能不在数据层服务器上。如果数据库在其他服务器上,则必须从 Team Foundation Server 单独管理其备份、还原和配置。但是,您应该同步数据库的维护操作以避免同步错误。

TfsBuild

包含 Team Foundation Build 数据和已发布的测试结果。

TfsIntegration

包含有关项目、区域、迭代、权限、组成员资格以及其他注册数据的信息。

TfsVersionControl

包含版本控制数据,是 Team Foundation 版本控制数据库。

TFSWarehouse

包含用于生成 Team System 的联机分析处理 (OLAP) 多维数据集的操作存储区数据。

说明:

您不需要单独备份和还原分析服务数据库和 Team System 多维数据集。将从还原的 TFSWarehouse 数据库重新生成这两个对象。

有关更多信息,请参见了解数据仓库体系结构

TfsWorkItemTracking

包含有关跟踪工作项的数据,是 Team Foundation 工作项跟踪数据库。

TfsWorkItemTrackingAttachments

包含有关工作项中的跟踪附件的数据,是 Team Foundation 工作项跟踪附件数据库。

TfsActivityLogging

包含针对 Team Foundation Server 的所有 Web 服务请求的日志。

说明:

Team Foundation Server 不需要此数据库即可工作,因此不需要对它进行备份。

停止 Team Foundation Server 使用的服务

停止 Team Foundation Server 使用的服务

  • 登录到相应的服务器,打开“计算机管理器”,按照指定的顺序停止以下组件:

    登录到承载此程序的服务器

    停止此组件

    SharePoint 产品和技术

    • SharePoint 定时服务或 Windows SharePoint Services 定时

    • SharePoint 产品和技术的相关应用程序池。根据您安装的 SharePoint 产品和技术的版本以及您配置它的方式,您可能需要停止下面的一个或多个池:

      • DefaultAppPool

      • SharePoint 管理中心 v3

      • SharePoint - 80

      • TFSWSS

      • TFSWSSADMIN

    应用层

    • Visual Studio Team Foundation Server 任务计划程序服务

    • Microsoft Team Foundation Server Application Pool

    Reporting Services

    • SQL Server Reporting Services (TFS 实例)

    • ReportServer 或 ReportServer$实例名称(应用程序池)

      说明:

      对于 SQL Server 2005,您需要在 Internet 信息服务 (IIS) 中管理 ReportServer;对于 SQL Server 2008,则不需要。

    有关更多信息,请参见如何:停止和启动服务、应用程序池和网站

    如果没有其他必须运行的服务,可以停止 IIS。若要停止 IIS,请打开命令提示窗口,使用带 /stop 参数的 IISReset 命令。例如,键入 iisreset /stop

还原 Team Foundation 数据库

停止服务后,可以使用随 SQL Server 一起提供的还原工具来还原 Team Foundation 数据。

警告:

必须将所有数据库还原到同一个时间点,否则这些数据库将损坏。

打开“还原数据库”对话框

  1. 登录到数据层服务器。

  2. 单击“开始”,指向“所有程序”,再指向“Microsoft SQL Server”,然后单击“SQL Server Management Studio”。

    说明:

    有关如何还原数据库的更多信息,请参见 Microsoft 网站上的“实现 SQL Server 数据库还原方案”。

    “连接到服务器”对话框打开。

  3. 在“服务器类型”中单击“数据库引擎”。

  4. 在“服务器名称”中,单击或键入数据层服务器和数据库实例的名称,然后单击“连接”。

    说明:

    如果 SQL Server 安装在群集上,则服务器名称是该群集的名称而非计算机名称。

    SQL Server Management Studio 打开。

  5. 展开“数据库”节点,以显示构成 Team Foundation 数据层的数据库的列表。

对下列每个数据库完成后续过程“还原数据库”:

  • ReportServer

    说明:

    如果使用了命名实例,此数据库将命名为“ReportServer$实例名称”。

  • ReportServerTempDB

    说明:

    如果您使用的是命名实例,则此数据库将命名为“ReportServerTempDB$实例名称”。

  • SharePoint 产品和技术的配置数据库(STS_Config_TFS 或 WSS_Config)

  • SharePoint 产品和技术的内容数据库(STS_Content_TFS 或 WSS_Content)

    说明:

    包含 SharePoint 产品和技术数据的数据库的名称将随着两个因素而变化:一是所安装的 SharePoint 产品和技术的版本,二是安装人员是否对该名称进行了自定义。此外,如果 SharePoint 产品和技术安装在与 Team Foundation Server 不同的服务器上,这些数据库可能不在数据层服务器上。如果数据库在其他服务器上,则必须从 Team Foundation Server 单独管理其备份、还原和配置。但是,您应该同步数据库的维护操作以避免同步错误。

  • TfsBuild

  • TfsIntegration

  • TfsVersionControl

  • TfsWarehouse

  • TfsWorkItemTracking

  • TfsWorkItemTrackingAttachments

  • TfsActivityLogging(可选)

还原数据库

  1. 右击要还原的数据库,依次指向“任务”、“还原”,然后单击“数据库”。

    “还原数据库”对话框打开。

  2. 在“还原的源”下方单击“源设备”,再单击省略号按钮(“…”)。

  3. 在“指定备份”对话框中,指定备份文件的位置,再单击“确定”。

    还原的第一个备份必须是完整备份,随后按照创建顺序依次还原事务日志备份。

  4. 在“选择要还原的备份集”下方指定要还原的备份集。

  5. 在“选择页”窗格中,单击“选项”,然后选中“覆盖现有数据库”复选框。

  6. 在“将数据库文件还原为”列表中,确认路径与当前数据库路径相匹配。

  7. 在“恢复状态”下方单击相应的状态。

  8. 如果不准备应用其他事务日志,请单击“数据库随时可用”。

    如果准备应用其他事务日志,请单击“数据库尚不可用”。

  9. 单击“确定”关闭“还原数据库”对话框并还原数据库。

  10. 如果准备应用其他事务日志,请按照日志备份的创建顺序,对每组日志备份执行此过程。从完整备份后创建的第一组日志备份开始。

    有关更多信息,请参见 Microsoft 网站上针对 SQL Server 2005SQL Server 2008 的“应用事务日志备份”。

重新生成 Team System 多维数据集

重新生成 Team System 多维数据集

删除版本控制缓存

重新生成 Team System 多维数据集之后,必须在应用层服务器(和所有代理服务器)上删除版本控制缓存,以强制与新的数据层服务器同步。

删除版本控制缓存

  1. 登录到应用层服务器,打开下面的目录:

    驱动器:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Web Services\VersionControl

  2. 删除 Data 子目录的内容,但不要删除 Data 子目录本身。

    有关更多信息,请参见如何:在应用层服务器上删除版本控制缓存

  3. 对部署中运行 Team Foundation Server Proxy 的任何服务器重复此过程。

更新 Team Foundation Server 服务帐户的安全标识符 (SID)

每次将数据还原到重新安装了 Team Foundation Server 的计算机上时,都必须更新 Team Foundation Server 服务帐户的安全标识符 (SID)。

更新 Team Foundation Server 服务帐户的 SID

  1. 登录到数据层,删除 Team Foundation Server 服务帐户的 SQL Server 登录对象。

  2. 登录到应用层服务器,更新服务帐户。

有关更多信息,请参见如何:针对 Team Foundation Server 更新服务帐户的安全标识符 (SID)

更新创建项目时所用帐户的安全标识符 (SID)

每次重新安装 Team Foundation Server 时,都必须更新创建项目时所用用户帐户的 SID。在这些情况下,创建项目的用户的 SID 会更改,但这些更改无法传播到还原后的数据。

更新创建项目时所用帐户的 SID

  1. 登录到承载 SharePoint 产品和技术的服务器。

  2. 移除并重新添加创建团队项目时所用的帐户。

    有关更多信息,请参见如何:更新创建项目时所用帐户的安全标识符 (SID)

刷新客户端计算机上的数据缓存

刷新客户端计算机上的数据缓存

重新启动 Team Foundation Server 使用的服务

除非是将数据还原到原始数据层服务器以外的服务器,否则,还原数据后即可重新启动服务。

重要说明:

如果是将数据还原到其他服务器,则不要立即重新启动服务。在重新启动数据层服务器之前,必须执行一些额外的步骤。有关这些步骤的更多信息,请参见如何:将 Team Foundation Server 数据还原到其他服务器

重新启动 Team Foundation Server 使用的服务

  • 登录到相应的服务器,打开“计算机管理器”,按照指定的顺序启动以下组件:

    登录到承载此程序的服务器

    启动此组件

    Reporting Services

    • SQL Server Reporting Services (TFS 实例)

    • ReportServer 或 ReportServer$实例名称(应用程序池)

    应用层服务器

    • Visual Studio Team Foundation Server 任务计划程序服务

    • Microsoft Team Foundation Server Application Pool

    SharePoint 产品和技术

    • SharePoint 定时服务或 Windows SharePoint Services 定时

    • SharePoint 产品和技术的相关应用程序池。根据您安装的 SharePoint 产品和技术的版本以及您配置它的方式,您可能需要启动以下池:

      • DefaultAppPool

      • SharePoint 管理中心 v3

      • SharePoint - 80

      • TFSWSS

      • TFSWSSADMIN

    说明:

    如果使用的是带 /stop 参数的 IISReset 命令停止的 IIS,则应该使用带 /start 参数的 IISReset 命令重新启动它。例如,键入 iisreset /start

请参见

任务

如何:备份 Team Foundation Server

如何:将 Team Foundation Server 数据还原到其他服务器

概念

Team Foundation Server 权限

Team Foundation Server 安全结构

管理 SQL Server 服务

其他资源

管理 Team Foundation Server 服务和服务帐户

如何:重新生成 Team System 多维数据集

如何:在应用层服务器上删除版本控制缓存

如何:针对 Team Foundation Server 更新服务帐户的安全标识符 (SID)

如何:更新创建项目时所用帐户的安全标识符 (SID)

如何:刷新客户端计算机上的数据缓存

管理数据

管理 Team Foundation Server 数据层服务器

管理 Team Foundation Server