更新:2007 年 11 月
您可以另外配置一个数据层服务器,用作 Team Foundation 的主体数据层服务器的 SQL Server 镜像。如果您配置数据库镜像,主体服务器上所有数据库的副本将与镜像服务器上的数据库保持同步。如果主体服务器无法使用,则可以手动交换主体服务器和镜像服务器的角色,使镜像服务器成为主体服务器。有关更多信息,请参见镜像 Team Foundation 数据层服务器。
| .gif) 说明: | 
|---|
| Team Foundation Server 不支持自动故障转移到 SQL Server 镜像。 | 
必需的权限
若要执行这些过程,您必须是 Team Foundation 的主体和镜像数据层服务器上“Administrators”组和“SQL Server Administrator”组的成员。有关更多信息,请参见 Team Foundation Server 权限。
为 SQL Server 镜像准备主体数据层服务器
- 在主体数据层服务器上,完整备份 Team Foundation Server 的所有数据库和事务日志。有关更多信息,请参见如何:备份 Team Foundation Server。 
- 备份 Reporting Services 加密密钥。请确保将密钥存储在 Team Foundation Server 以外的计算机上的安全位置,并且可以在需要时访问该密钥。有关更多信息,请参见如何:备份 Reporting Services 加密密钥。 
安装 SQL Server 作为 SQL Server 镜像
备份数据库后,必须安装另一个数据层服务器作为 SQL Server 镜像。
安装和准备 SQL Server 镜像
- 在服务器上安装 SQL Server 作为 SQL Server 镜像。 - 有关如何确保 SQL Server 已正确安装并正常运行的详细说明,请参见 Microsoft 网站上的 Team Foundation 安装指南中的以下主题: - “如何在双服务器部署中安装 Team Foundation Server 的 SQL Server 2005” 
- “如何在双服务器部署中安装 Team Foundation Server 的 SQL Server 2008” 
- “如何验证 SQL Server 2005 或 SQL Server 2008” 
 .gif) 重要说明: 重要说明:- 请务必在安装过程中安装所有必需的 Service Pack。 
在 SQL Server 镜像上还原数据
必须使用随 SQL Server 一起提供的还原工具,将 Team Foundation 数据还原到将用作 SQL Server 镜像的数据层服务器上。
| .gif) 警告: | 
|---|
| 必须将所有数据库还原为同一时间点创建的备份,否则数据库将损坏。 | 
打开 SQL Server Management Studio 并查看数据库
- 在将用作 SQL Server 镜像的数据层服务器上,单击“开始”,指向“所有程序”、“Microsoft SQL Server”,然后单击“SQL Server Management Studio”。 .gif) 说明: 说明:- 有关更多信息,请参见 Microsoft 网站上的“实现 SQL Server 数据库还原方案”(SQL Server 2005 或 SQL Server 2008)。 
- 为“服务器类型”选择“数据库引擎”。为服务器选择适当的“服务器名称”和“身份验证”方案。根据 SQL Server 要求,提供有效的“用户名”和“密码”,然后单击“连接”。 
- 展开“数据库”节点,以显示构成 Team Foundation 数据层的数据库的列表。只有在为 Team Foundation 数据库执行了“还原各个数据库”过程之后,该列表中才会出现 Team Foundation 数据库。 
对以下数据库完成“还原各个数据库”过程:
- ReportServer 
- ReportServerTempDB 
- SharePoint 产品和技术的配置数据库(STS_Config_TFS 或 WSS_Config) 
- SharePoint 产品和技术的内容数据库(STS_Content_TFS 或 WSS_Content) .gif) 说明: 说明:- 包含 SharePoint 产品和技术数据的数据库的名称将随着两个因素而变化:一是所安装的 SharePoint 产品和技术的版本,二是安装人员是否对该名称进行了自定义。此外,如果 SharePoint 产品和技术安装在与 Team Foundation Server 不同的服务器上,则这些数据库可能不在 Team Foundation 的数据层服务器上。如果这些数据库不存在,则必须从 Team Foundation Server 分别管理它们的备份、还原和配置。但是,您应该同步数据库的维护操作以避免同步错误。 
- TfsBuild 
- TfsIntegration 
- TfsVersionControl 
- TfsWarehouse 
- TfsWorkItemTracking 
- TfsWorkItemTrackingAttachments 
- TfsActivityLogging 
| .gif) 说明: | 
|---|
| 包含 SharePoint 产品和技术数据的数据库的名称将随着两个因素而变化:一是所安装的 SharePoint 产品和技术的版本,二是安装人员是否对数据库的名称进行了自定义。 | 
还原各个数据库
- 右击要还原的数据库,依次指向“任务”、“还原”,然后单击“数据库”。 
- 在“还原数据库”对话框中,在“还原源”区域中选择“源设备”,然后单击省略号按钮(“…”)。 
- 在“指定备份”对话框中,填写相应信息以指定备份文件的位置,然后单击“确定”。 - 应用的第一个备份必须是完全备份,随后按照创建顺序依次应用事务日志备份。 
- 在“选择要还原的备份集”区域中,选择要还原的备份集。 
- 从左侧导航窗格中选择“选项”。在“还原选项”区域中,选择“覆盖现有数据库”框。 
- 在“将数据库文件还原为”区域中,确保指定的路径与当前的数据库路径匹配。 
- 在“恢复状态”区域中,单击“不对数据库执行任何操作,不回滚未提交的事务。可以还原其他事务日志。(RESTORE WITH NORECOVERY)”。 
- 单击“确定”关闭“还原数据库”对话框并还原数据库。 
- 如果准备应用其他事务日志,请根据每个日志备份的创建顺序,从完整备份后创建的第一个日志备份开始,对它们执行该过程。有关更多信息,请参见 Microsoft 网站上的“应用事务日志备份”(SQL Server 2005 或 SQL Server 2008)。 
配置 Team Foundation 数据层服务器以使用 SQL Server 镜像
在将 Team Foundation 数据库还原到将作为 SQL Server 镜像的数据层服务器之后,必须尽快配置原始数据层服务器以使用另一个服务器作为镜像。
| .gif) 重要说明: | 
|---|
| 必须允许在数据层服务器和要用作镜像的服务器之间通过适当数据库镜像端口进行 TCP 通信。此通信的默认端口为 5022。可以配置 SQL Server 为镜像使用其他端口。 | 
配置从主体 Team Foundation 数据层服务器到 SQL Server 镜像的镜像
- 在 Team Foundation 主体数据层服务器上,依次单击“开始”、“所有程序”、“Microsoft SQL Server”和“SQL Server Management Studio”。 - “连接到服务器”对话框打开。 
- 在“服务器类型”列表中单击“数据库引擎”。 
- 在“服务器名称”中,单击主体数据层服务器。 
- 在“身份验证”中,单击适当的方案。 
- (可选)如果使用“SQL Server 身份验证”,请在“用户名”和“密码”中键入有效凭据,然后单击“连接”。 
- 展开“数据库”节点,以显示构成 Team Foundation 数据层的数据库的列表。必须按数据库的显示顺序对这些数据库执行下列步骤: - ReportServer 
- ReportServerTempDB 
- SharePoint 产品和技术的配置数据库(STS_Config_TFS 或 WSS_Config) 
- SharePoint 产品和技术的内容数据库(STS_Content_TFS 或 WSS_Content) .gif) 说明: 说明:- 包含 SharePoint 产品和技术数据的数据库的名称将随着两个因素而变化:一是所安装的 SharePoint 产品和技术的版本,二是安装人员是否对该名称进行了自定义。此外,如果 SharePoint 产品和技术安装在与 Team Foundation Server 不同的服务器上,则这些数据库可能不在 Team Foundation 的数据层服务器上。如果这些数据库不存在,则必须从 Team Foundation Server 分别管理它们的备份、还原和配置。但是,您应该同步数据库的维护操作以避免同步错误。 
- TfsBuild 
- TfsIntegration 
- TfsVersionControl 
- TfsWarehouse 
- TfsWorkItemTracking 
- TfsWorkItemTrackingAttachments 
- TfsActivityLogging 
 
- 右击要镜像的第一个数据库并单击“属性”。 
- 在“数据库属性”中的“选择页”窗口中,单击“镜像”。在“镜像”页上单击“配置安全性”。 - 将打开“配置数据库镜像安全向导”。单击“下一步”。 
- 在“包括见证服务器”页上,单击“否”,再单击“下一步”。 
- 在“选择要配置的服务器”页上单击“下一步”。 
- 在“主体服务器实例”页上检查默认的信息,确保其与原始 Team Foundation 数据层服务器的信息相匹配,然后单击“下一步”。 
- 在“镜像服务器实例”页上的“镜像服务器实例”中,键入要设置为 SQL Server 镜像的 Team Foundation 数据层服务器的名称,然后单击“连接”。 
- 在“连接到服务器”中,为该服务器选择适当的“服务器名称”和“身份验证”方案。根据 SQL Server 要求,提供有效的“用户名”和“密码”,然后单击“连接”。 
- 在“服务帐户”页上的“主体”中,键入 Team Foundation 服务帐户的名称(称为 TFSService)。在“镜像”中键入 Team Foundation 服务帐户的名称。这两个帐户应为同一个帐户。单击“下一步”。 
- 在“完成该向导”页上检查信息,如果所有信息正确无误,则单击“完成”。 
- 在向导完成对镜像端点的设置后,单击“关闭”。 - 将打开“数据库属性”对话框。单击“开始镜像”。 .gif) 说明: 说明:- 在某些配置中,您可能需要将 SQL Server 实例的标识更改为 Team Foundation 的服务帐户,并还原事务日志,才能成功启动对数据库的镜像。 
- 对于每个 Team Foundation 数据库,请重复步骤 8-13。在这一过程的最后,所有的 Team Foundation 数据库都应从主体 Team Foundation 数据层服务器镜像到镜像 Team Foundation 数据层服务器。