将现有服务器场迁移到 64 位环境 (Office SharePoint Server 2007)

若要将 Microsoft Office SharePoint Server 2007 升级到 64 位环境,您必须将现有服务器迁移到新服务器场。无法将 Office SharePoint Server 2007 直接从 Office SharePoint Server 2007 的 32 位版本升级到 64 位版本。

您必须确定哪种迁移策略适合于您的环境。本文提供有关采用干净迁移方式(分阶段)将 SharePoint 场迁移到 64 位环境中的服务器的说明。有关 64 位环境的优势的信息,请参阅 64 位硬件和软件的优势 (Office SharePoint Server 2007)

您可以通过多种方式将现有服务器场迁移到 64 位环境;例如,通过将 64 位服务器添加到现有服务器场,然后移除 32 位服务器。本文中描述的分阶段方法是为减轻可能出现的性能问题而设计的。分阶段方法还可以将迁移所需的停机时间段分散开来,并使您能够在迁移了服务器场服务器后执行适当级别的测试。

服务在迁移过程中将会中断,因此您必须规划迁移,并在对用户影响最小的时段执行迁移。

本文包含以下各节:

  • 约束和已知问题

  • 迁移服务器场之前

  • 将服务器迁移到 64 位环境

约束和已知问题

以下方面的先决条件、约束和已知问题适用于 64 位环境中 Microsoft Office SharePoint Server 的部署。

SharePoint 软件更新和 Service Pack

在源服务器场和目标服务器场中的所有计算机上,将 Office SharePoint Server 更新到同一 Service Pack 或软件更新级别。必须要这样做,才能防止在所有服务器上软件版本不相同的情况下会出现的潜在迁移后错误。

如果迁移目标还包括交叉操作系统或数据库版本,建议您确定并安装在 Windows Server 2003 和 Microsoft SQL Server 2005 上发布和安装的任何公共更新,这些更新同时适用于 Windows Server 2008 和 Microsoft SQL Server 2008。

现有应用程序

您必须重新编译现有的 32 位应用程序和自定义程序集(例如,Web 部件和事件接收器),以便在 64 位体系结构上运行,因为 SharePoint 的 64 位版本无法加载 32 位程序集。在重新编译现有应用程序或自定义程序集之前,请验证它们是否可编译为在两种体系结构上均可运行。如果情况如此,请不要针对单一体系结构来编译这些应用程序或程序集。(在 Microsoft Visual Studio 中,此生成选项为 AnyCPU。)

如果现有应用程序是第三方应用程序,请向第三方供应商咨询有关 64 位版本和兼容性的问题。对于没有源代码的定制合约解决方案,请在测试 64 位环境中验证这些解决方案以确保兼容性。

在服务器场中的每一层上保留同源服务器

作为一种最佳方案,建议您在迁移过程中在每一层上保留同源服务器。层是一组服务器,这些服务器提供从最终用户适用性角度而言不可分开的类似服务。例如,服务用户请求的负载平衡前端 Web 服务器构成一个层,但运行 Web 应用程序服务的 SharePoint 索引服务器不会被视为该层的一部分。

如果按照本文档中的过程进行操作,每一层都将包含具有相同体系结构的服务器。

如果选择只是将 64 位服务器添加到现有服务器场以实现将服务器迁移到 64 位环境,则无法始终在每一层上保留同源服务器,并因此可能会出现性能不佳或不一致的情况。确定硬件和软件要求 (Office SharePoint Server) (https://go.microsoft.com/fwlink/?linkid=119403&clcid=0x804) 中确定了这些问题。尽管支持使用此方法(通过将 64 位服务器添加到现有服务器场来进行迁移),但我们不建议您使用此方法来进行服务器场迁移,原因是层中的混合体系结构会导致潜在的性能风险。

Windows Server 2008

若要在运行 Windows Server 2008 的计算机上安装 Office SharePoint Server,您必须安装 Office SharePoint Server SP1。

对于 Office SharePoint Server,您可以创建包含 SP1 的补充安装。有关详细信息,请参阅:

安装在 Windows Server 2008 上的 Windows SharePoint Services 3.0

这是 Windows SharePoint Services 3.0 的已知问题:当您尝试将大文件上载到 SharePoint 网站时,在 Windows Server 2008 上运行的网站将会超时。有关详细信息,请参阅:

IFilter 和扩展

大多数(但不是全部) IFilter 组件和扩展都支持 64 位。请验证您的 32 位 iFilter 和扩展是否能在 64 位环境中工作。

如果使用 Microsoft Filter Pack,为了避免 Visio 筛选器在 64 位环境中出现已知问题,您必须为 Windows SharePoint Services 3.0 和 Office SharePoint Server 2007 安装 12 月版累积更新(或更高版本)。

备注

Microsoft Filter Pack 适用于多种搜索产品,其中包括 Office SharePoint Server 2007。该筛选器包提供了 IFilter,使搜索能够对 Microsoft Office 格式(例如 .pptx 和 .docx)的文件进行爬网并建立索引。

对 IBM Lotus Notes 进行索引

您无法在 64 位 Office SharePoint Server 2007 环境中对 IBM Lotus Notes 数据库进行爬网,原因是 IBM 未提供 Lotus Notes API 的 64 位版本。

迁移服务器场之前

在迁移服务器场之前,请仔细查看示例服务器场拓扑模型,以及建议为将多层服务器场从一个环境迁移到另一个环境采用的策略。此迁移策略的设计目的是为这种类型的服务器场拓扑提供尽可能最干净的迁移。

服务器场拓扑

下图显示了用于源服务器场(服务器场 A)和目标服务器场(服务器场 B)的服务器场拓扑。此拓扑是将 SharePoint 角色安装在多台服务器上的服务器场的代表形式。为了便于参考,每个服务器场中的服务器根据其所在层被分组为多个层。

用于迁移的服务器场拓扑

用于迁移的 Office SharePoint Server 场

在上图中,请注意以下各项:

  • 层 1-A 和 1-B 包含两台负载平衡前端 Web 服务器(WebA-32 和 WebB-32、WebA-64 和 WebB-64)。

  • 层 2-A 和 2-B 包含两台应用程序服务器。一台服务器用于网站管理和搜索查询(AppA-32、AppA-64);另一台服务器用于搜索索引(AppB-32、AppB-64)。

  • 层 3-A 和 3-B 包含一台数据库服务器(DB-32、DB-64)。

下表列出了安装在每个服务器场中的服务器上的软件。

安装在服务器场服务器上的软件

软件 服务器场 A(32 位) 服务器场 B(64 位)

操作系统

Windows Server 2003 SP2

Windows Server 2008

数据库

SQL Server 2005 SP2

SQL Server 2008

Office SharePoint Server

安装了最新累积更新的 Office SharePoint Server 2007

安装了最新累积更新的 Office SharePoint Server 2007。

对于上表,请注意以下各项:

迁移策略

该策略的目的是按以下顺序为服务器场中的每一层在单独的阶段中迁移和测试服务器场服务器:

  1. 3-A 层:将现有数据库服务器迁移到新数据库服务器。为减轻在 64 位系统查询或写入 32 位数据库时可能发生的任何性能问题,将会首先完成此层上的操作。提供了以下选项:

    • 在目标服务器上保留与源服务器上相同的主服务器名称。

    • 更改目标服务器上的主服务器名称。这是本文中使用的数据库迁移选项。

  2. 2-A 层:测试新数据库服务器,然后将现有应用程序服务器迁移到新服务器场。

  3. 1-A 层:测试应用程序服务器,然后将 64 位前端 Web 服务器添加到新服务器场。

尽管前面的系统性方法不是强制性的,但我们强烈建议采用该方法,因为它提供的迁移和测试环境可以确保尽可能最干净的迁移。优点包括:可以最大程度地减少意外结果(例如缺少文件和损坏数据),并且能够在迁移过程中有效地管理服务停机时间。

将服务器迁移到 64 位环境

您可以使用本节中的步骤来迁移到安装了任何以下操作系统和数据库的服务器场:

  • Windows Server 2003 的 64 位版本

  • Windows Server 2008 的 64 位版本

  • SQL Server 2005 的 64 位版本

  • SQL Server 2008 的 64 位版本

从迁移的角度看,这些操作系统和数据库之间的显著差异体现在目标服务器的准备过程中。

在执行迁移的第 1 阶段(后端数据库)、第 2 阶段(应用程序服务器)和第 3 阶段(前端服务器)之前,请阅读下一节。

开始之前

在开始服务器场迁移之前,必须完成以下任务:

  • 获得更新的参考资料

  • 记录服务器场配置

  • 确定所需的帐户和权限并将其记录在文档中

  • 准备目标服务器场

获得更新的参考资料

获得移动所有数据库 (Office SharePoint Server 2007) (https://go.microsoft.com/fwlink/?linkid=118325&clcid=0x804) 的副本。此主题包含一些综合性说明,其中包括用于移动 SharePoint 数据库服务器的 SQL Server 和 Stsadm 命令。这些说明涵盖以下方案:

  • 将数据库移动到名称相同的新数据库服务器。

  • 将数据库移动到名称不同的新数据库服务器。

记录服务器场配置

服务器场的某些元素必须要手动迁移。请确保已将以下各项记录在文档中:

  • 与 SSP 关联的 Web 应用程序

  • 自定义母版页和其他网页

  • 其他自定义内容

  • 功能

  • 自定义应用程序和编译的 DLL

  • 任何其他自定义服务器场元素

确定所需的帐户和权限并将其记录在文档中

为了能够在源服务器和目标服务器上工作,请参阅移动所有数据库 (Office SharePoint Server 2007) (https://go.microsoft.com/fwlink/?linkid=118325&clcid=0x804) 以确保您具有使用 Office SharePoint Server 2007 工具、Microsoft SQL Server 数据库工具和操作系统命令的正确权限。

准备目标服务器场

必须为目标服务器场上的应用程序和数据库服务器完成以下准备工作:

  • 将适当的操作系统更新应用于服务器。

  • 使用在 Windows Server 2008 操作系统上部署简单服务器场 (Office SharePoint Server) (https://go.microsoft.com/fwlink/?linkid=145932&clcid=0x804) 作为在 Windows Server 2008 上配置 SQL Server 和部署 SharePoint 的参考。

  • 在数据库服务器上安装 SQL Server 2005 或 SQL Server 2008。

  • 使用 SharePoint 产品和技术配置向导在 AppA-64 上完成 SharePoint 的基本安装。完成后,将有一个包含两台应用程序服务器(AppA-64 和 AppB-64)及一台数据库服务器 (DB-64) 的新服务器场。

    Important重要说明:

    不要为新内容数据库指定与源服务器场上的内容数据库相同的名称。您不能在两个 SharePoint 场之间共享内容数据库。

第 1 阶段:迁移后端数据库

在此阶段中,将通过使用以下过程之一来迁移后端数据库:

  • 将数据库移动到名称相同的主服务器。

  • 将数据库移动到名称不同的主服务器。

    备注

    可以更改 SharePoint 数据库服务器的名称,但不能更改实例名称。例如,DB-32\sharepoint 可重命名为 DB-64\sharepoint,但 DB-32\sharepoint 无法重命名为 DB-32\sharepoint2。

以下过程需要具有内容数据库的完整备份。

将数据库移动到名称相同的主服务器

  1. 通过停止与 Office SharePoint Server 2007 关联的服务以及停止 Internet Information Services (IIS),来完全停止服务器场 A。

  2. 使用 SQL Server 2005 工具来备份源数据库服务器 (DB-32) 上的所有 SharePoint 数据库。

  3. 关闭源数据库服务器 (DB-32)。

  4. 将所有备份文件复制到不属于服务器场 A 或服务器场 B 的一个服务器共享文件夹。此共享文件夹为所有重要的 SharePoint 文件提供还原点。

  5. 将数据库备份文件复制到目标数据库服务器。

  6. 通过使用 SQL Server 2008 工具,将数据库从 DB-32 还原到 DB-64。

  7. 将所有 SQL Server 登录名、固定服务器角色、固定数据库角色以及数据库的权限复制到目标服务器 (DB-64)。

  8. 将数据库重新附加到新数据库服务器。

  9. 重新启动 AppA-32 应用程序服务器以应用更改,并确保与 Office SharePoint Server 2007 关联的服务、网站和应用程序池已启动。

  10. 将服务器场 A 上的所有服务器配置为指向 DB-64。

  11. 重新启动服务器场 A。

  12. 针对您的环境执行相应测试,以确保服务器场 A 正在使用新数据库。

以下过程需要所有 SSP 和内容数据库的完整备份。

备注

如果服务器场使用 SQL Server 别名连接到 SQL Server 数据库,则无需备份和还原 SSP。

将数据库移动到名称不同的主服务器

  1. 使用 Stsadm 操作在 AppA-32 上执行所有 SSP 的完整备份。

  2. 从服务器场 A 中删除所有 SSP。

  3. 通过停止与 Office SharePoint Server 2007 关联的服务以及停止 Internet Information Services (IIS),来完全停止服务器场 A。

  4. 使用 SQL Server 2005 工具来备份源数据库服务器 (DB-32) 上的以下 SharePoint 数据库:

    • 所有内容数据库

    • 管理中心内容数据库

    • Windows SharePoint Services 帮助搜索数据库

  5. 将所有备份文件复制到不属于服务器场 A 或服务器场 B 的一个服务器共享文件夹。此共享文件夹为所有重要的 SharePoint 文件提供还原点。

  6. 将数据库备份文件复制到目标数据库服务器。

  7. 通过使用 SQL Server 2008 工具,将数据库从 DB-32 还原到 DB-64。

  8. 将所有 SQL Server 登录名、固定服务器角色、固定数据库角色以及数据库的权限复制到目标服务器 (DB-64)。

  9. 在 AppA-32 上运行 Stsadm renameserver 操作,以便重命名服务器场 B 中的数据库服务器。

  10. 重新启动 AppA-32 应用程序服务器以应用更改,并确保与 Office SharePoint Server 2007 关联的服务、网站和应用程序池已启动。

  11. 使用带 [keepindex] 选项的 Stsadm –o restoressp,在 AppA-32 上还原 SSP。

  12. 将所有还原的 SSP 添加到服务器场 A。

  13. 设置新的默认 SSP,然后删除原来的默认 SSP。

  14. 将服务器场 A 上的所有服务器配置为指向 DB-64。

  15. 重新启动服务器场 A。

  16. 针对您的环境执行相应测试,以确保服务器场 A 正在使用新数据库。

完成此阶段后,您的活动服务器场将具有以下拓扑:

  • 前端 Web 服务器:WebA-32、WebB-32

  • 应用程序服务器:AppA-32、AppB-32

  • 数据库服务器:DB-64

第 2 阶段:迁移应用程序服务器

您将在此阶段备份和还原 SSP。在此阶段中,可以将在记录服务器场配置中记录的服务器场元素复制到您在第 1 阶段创建的服务器共享上的位置。使用以下过程可以迁移应用程序服务器。

迁移应用程序服务器

  1. 为服务器场 B 准备前端 Web 服务器,但不将这些服务器添加到服务器场。

  2. 使用 Stsadm 操作在 AppA-32 上执行所有 SSP 的完整备份。

  3. 通过发出以下命令,从服务器场 A 中删除所有 SSP:

    stsadm -o deletessp -title SharedServices -force

  4. 通过停止与 Office SharePoint Server 2007 关联的服务以及停止 Internet Information Services (IIS),来完全停止服务器场 A。

  5. 将需要手动移动的服务器场元素从服务器共享复制到服务器场 B 上与其在服务器场 A 上相对应的位置(WebA-64、WebB-64 和 AppA-64)。

  6. 将所有备份文件复制到不属于服务器场 A 或服务器场 B 的一个服务器共享文件夹。此共享文件夹为所有 SharePoint 重要文件提供还原点。

  7. 将所有备份文件复制到 AppA-64。

  8. 启动 AppA-64 以应用更改,并确保与 Office SharePoint Server 2007 关联的服务、网站和应用程序池已启动。

  9. 将 AppA-64 配置为指向从服务器场 A 还原的内容数据库,并使用 SQL Server 2008 工具从 DB-64 中删除建立服务器场 B 时创建的原始内容数据库。

  10. 使用带 [keepindex] 选项的 Stsadm –o restoressp,在 AppA-64 上还原 SSP。

  11. 将所有还原的 SSP 添加到服务器场 B。

  12. 设置新的默认 SSP,然后删除原来的默认 SSP。

  13. 重新启动服务器场 A。

  14. 针对您的环境执行相应测试,以确保源服务器场正在使用新的应用程序服务器和数据库。

完成此阶段后,您的活动服务器场将具有以下拓扑:

  • 前端 Web 服务器:WebA-32、WebB-32

  • 应用程序服务器:AppA-64、AppB-64

  • 数据库服务器:DB-64

第 3 阶段:迁移前端 Web 服务器

在此阶段中,您将通过将 64 位前端 Web 服务器添加到服务器场来完成迁移。使用以下过程来迁移前端 Web 服务器。

迁移前端 Web 服务器。

  1. 通过停止与 Office SharePoint Server 2007 关联的服务以及停止 Internet Information Services (IIS),来完全停止服务器场 A。

  2. 启动服务器场 B。

  3. 将 WebA-64 和 WebB-64 添加到服务器场 B,并配置它们以使其指向 DB-64。

  4. 针对您的环境执行相应测试,以确保目标服务器场正常工作。

完成此阶段后,到 64 位环境的迁移即已完成,并且您的活动服务器场将具有以下拓扑:

  • 前端 Web 服务器:WebA-64、WebB-64

  • 应用程序服务器:AppA-64、AppB-64

  • 数据库服务器:DB-64