如何:故障转移到镜像数据层服务器

更新:2007 年 11 月

如果已经为 Team Foundation 数据库配置了 SQL Server 镜像,则可以在使主体服务器脱机之前,手动交换主体和镜像数据层服务器的角色。此策略有助于在最大程度上减少 Team Foundation Server 部署的中断。有关更多信息,请参见镜像 Team Foundation 数据层服务器

说明:

如果主体服务器可用,应遵循本主题中的过程。如果主体服务器不可用,则应遵循如何:在主体服务器不可用时故障转移到镜像数据层服务器中的过程。

本主题中的过程针对 Team Foundation Server 的双服务器部署中的数据层服务器和应用层服务器。对于单服务器部署,请在运行 Team Foundation Server 的服务器上执行所有过程。有关单服务器部署和双服务器部署的更多信息,请参见 Team Foundation Server 安全结构

若要故障转移到镜像数据层服务器,必须执行以下过程:

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

  2. 手动交换主体数据库和镜像数据库的角色

  3. 重定向 Reporting Services 以连接到镜像数据层服务器

  4. 将应用层服务器映射到新的主体数据层服务器

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

  6. 删除版本控制缓存

  7. 为团队项目重定向网站

  8. 重新启动服务

必需的权限

若要执行这些过程,您必须是主体和镜像数据层服务器上 Administrators 组和 SQL Server Administrator 组的成员。有关更多信息,请参见 Team Foundation Server 权限

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

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

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

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

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

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

停止 Team Foundation Server 使用的服务

对数据层服务器进行故障转移之前,必须使服务停止使用主体服务器,并且必须准备好应用层服务器以使用镜像服务器。

说明:

在单服务器部署中,您登录到运行 Team Foundation Server 的服务器以停止和启动所有服务、应用程序池和网站。在双服务器部署中,您必须登录到承载 Team Foundation Server 的特定服务、应用程序池和网站的相应服务器。有关启动和停止这些组件的更多信息,请参见如何:停止和启动服务、应用程序池和网站

停止 Team Foundation Server 使用的服务

  • 登录到相应服务器,打开“计算机管理器”,停止下表中的服务和应用程序池:

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

    停止此组件

    SharePoint 产品和技术

    • 默认网站或团队网站

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

    应用层

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

    • Microsoft Team Foundation Server Application Pool

    Reporting Services

    • SQL Server Reporting Services(TFS 实例)

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

      说明:

      可以在 Internet 信息服务 (IIS) 中停止 SQL Server 2005 的 ReportServer,但不能停止 SQL Server 2008 的 ReportServer。

    • 默认网站或报表管理器网站

手动交换主体数据库和镜像数据库的角色

对数据库进行故障转移时,主体服务器成为镜像服务器,镜像服务器成为主体服务器。有关更多信息,请参见 Microsoft 网站上的“如何:手动对数据库镜像会话进行故障转移 (SQL Server Management Studio)”(SQL Server 2005SQL Server 2008)。

在主体数据层服务器上打开 SQL Server Management Studio

  1. 在主体数据层服务器上,单击“开始”,指向“所有程序”,指向“Microsoft SQL Server”,然后单击“SQL Server Management Studio”。

    将出现“连接到服务器”对话框。

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

  3. 在“服务器名称”中,单击或键入要连接的服务器的名称和实例。

  4. 在“身份验证”列表中,单击适用于您的服务器的方案。

  5. 如果 SQL Server 要求,请在“用户名”和“密码”中,键入有效帐户的名称和密码,然后单击“连接”。

    SQL Server Management Studio 将打开。

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

对以下列表中的每个数据库进行故障转移:

  • ReportServer

    说明:

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

  • ReportServerTempDB

    说明:

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

  • SharePoint 产品和技术数据库的以下数据库(如果部署对 SharePoint 产品和技术和 Team Foundation Server 使用相同的数据层服务器):

    • SharePoint 产品和技术的管理内容数据库 (WSS_AdminContent)

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

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

      说明:

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

  • TfsActivityLogging

  • TfsBuild

  • TfsIntegration

  • TfsVersionControl

  • TfsWarehouse

  • TfsWorkItemTracking

  • TfsWorkItemTrackingAttachments

故障转移每个数据库

  1. 在 SQL Server Management Studio 中,右击要故障转移的数据库,然后单击“属性”。

    将打开“数据库属性”页。

  2. 在“选择页”窗格中,单击“镜像”,然后单击“故障转移”。

    说明:

    如果“故障转移”按钮不可用,说明没有为镜像配置数据库。有关更多信息,请参见如何:为 Team Foundation 数据层服务器配置 SQL Server 镜像

重定向 Reporting Services 以连接到新的主体数据层服务器

重定向 Reporting Services 以连接到新的主体数据层服务器

将应用层服务器映射到新的主体数据层服务器

对所有数据库进行故障转移后,部署的镜像数据层服务器成为主体数据层服务器。若要完成故障转移,必须将应用层服务器重定向到主体服务器。

将应用层服务器重定向到新的主体数据层服务器

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

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

    启动此组件

    应用层服务器

    • Microsoft Team Foundation Server Application Pool

    Reporting Services

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

      说明:

      如果您在运行 SQL Server 2005 而不是运行 SQL Server 2008,则在 IIS 中启动 Report Server 应用程序池。

    • SQL Server Reporting Services(TFS 实例)

  2. 打开“命令提示符”窗口,将目录更改为“%ProgramFiles%\Microsoft Visual Studio 2008 Team Foundation Server\Tools”。

  3. 键入以下命令:

    TfsAdminUtil RenameDT newTeamFoundationDataTierServerName

    重要说明:

    若要使 RenameDT 命令成功,上一步中的应用程序池和程序必须正在运行。此要求是 Visual Studio Team System 2008 Team Foundation Server 中新增的。

  4. 键入 iisreset 以重新启动 IIS,然后按 Enter。

重新生成 Team System 多维数据集

重新生成 Team System 多维数据集

删除版本控制缓存

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

删除版本控制缓存

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

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

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

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

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

为团队项目重定向网站

重定向项目站点以使用新的主体数据层服务器上的内容数据库

重新启动服务

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

  1. 登录到相应服务器,打开“计算机管理器”,并按指定的顺序启动下表中的服务:

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

    启动此组件

    SharePoint 产品和技术

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

    • 默认网站或团队网站

    应用层服务器

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

    • Microsoft Team Foundation Server Application Pool

    Reporting Services

    • SQL Server Reporting Services(TFS 实例)

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

      说明:

      如果您在运行 SQL Server 2005 而不是运行 SQL Server 2008,则在 Internet 信息服务 (IIS) 中启动 Report Server 应用程序池。

    • 默认网站或报表管理器网站

  2. 打开 Internet Explorer,在地址栏中键入以下字符串,验证团队项目门户是否可用:

    http://SharePointServices 服务器名称/default.aspx

请参见

任务

如何:为 Team Foundation 数据层服务器配置 SQL Server 镜像

概念

Team Foundation Server 权限

镜像 Team Foundation 数据层服务器

其他资源

如何:停止和启动服务、应用程序池和网站