迁移 Project Server 2003 数据后的任务

 

适用于: Project Server 2010

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

在已通过运行迁移工具将 Microsoft Office Project Server 2003 数据迁移到 Microsoft Office Project Server 2007 之后,需要完成几个迁移后任务。这些任务包括:

  • 验证迁移是否正常

  • 更新迁移的服务器设置

  • 将迁移的经过表单身份验证的用户与 Project Server 2007 表单身份验证存储同步

  • 验证项目工作环境提供设置

  • 删除迁移的非活动用户(可选)

  • 修复项目货币设置

  • 更改迁移的本地 Windows 帐户

  • 更新多语言查阅表格

本文还包含有关如何回滚迁移的信息。

验证迁移是否正常

查看迁移工具命令行或迁移日志以验证迁移是否成功。如果迁移失败,请进行更正并重新运行迁移工具。如果存在无法恢复的问题,则在 Project Server 2003 中进行更改,还原干净的 Office Project Server 2007 数据库,再重新尝试迁移。如果迁移过程看起来似乎已成功,请通过执行以下几种测试来确保将数据正确迁移到 Office Project Server 2007:

  • 验证项目数据:打开迁移的项目,对其进行更改,添加并发布企业资源,接受状态更新等

  • 验证 Project Web Access 数据:填写时间表、创建建议、构建多维数据集等

强烈建议您准备一份特定于您的需求的迁移清单,并在迁移之后测试这些项目。

更新迁移的服务器设置

无法迁移到 Project Server 2007 的数据 中所述,可能不会将 Project Server 2003 中的所有数据迁移到 Office Project Server 2007。因此强烈建议您仔细检查所有的 Office Project Server 2007 服务器设置,并确保这些设置与您所期望的一样。下面列出了一些特定的区域:

  1. **安全设置:**有一些安全权限(全局和类别)是 Office Project Server 2007 中新增的安全权限。这些权限可能不会迁移。您需要检查这些权限中的每一种权限,并决定是否对用户授予该权限。有关详细信息,请参阅 Microsoft Office Project Server 2007 中的权限简介 (https://technet.microsoft.com/zh-cn/library/cc197530(office.12).aspx)。

  2. **Project Web Access 视图定义:**不会从 Project Server 2003 中迁移“Filter by”和“Group by”子句。可能需要重新创建这两个子句。同样,不会迁移某些 Project Web Access 视图域。可能需要确保在迁移的视图中可使用感兴趣的所有域。

  3. **合并类似的安全组、类别、模板和 Project Web Access 视图定义并对其重命名:**如果在迁移安全模板、视图定义、安全组和类别时发生名称冲突,则迁移工具会向发生冲突的名称附加一个前缀或后缀。执行此操作可将 Project 2007 实体和 Project 2003 实体保留在同一个系统中。然后,可以根据需要选择要保留的实体或选择将它们合并。建议您对二者进行解析,以便最终用户不会混淆它们。

将迁移的经过表单身份验证的用户与 Project Server 2007 表单身份验证存储同步

若要确保迁移的经过表单身份验证的用户能在 Office Project Server 2007 中工作,则必须执行此操作。有关详细信息,请参阅为 Project Server 2007 配置 SQL 成员资格提供程序表单身份验证 (https://go.microsoft.com/fwlink/?linkid=188757\&clcid=0x804)。

验证项目工作环境提供设置

迁移工具会将服务器设置的“项目工作环境提供设置”页中的“自动提供”选项重置为 Office Project Server 2007 中的“允许用户在 Project Server 中手动创建项目工作环境”。此设置可确保迁移过程不会为已具有尚未迁移的工作环境的项目提供重复的工作环境。

在运行迁移工具之后,请查看位于 Project Web Access 服务器设置的“操作策略”部分中的“项目工作环境提供设置”。验证是否根据您的需求正确配置“网站 URL”和“自动提供”选项。如果希望在发布项目时 Office Project Server 2007 自动创建工作环境,则在运行迁移工具之后,在 Office Project Server 2007 中将“自动提供”选项重置为“首次发布到 Project Server 时,自动为每个项目创建项目工作环境”。

删除迁移的非活动用户(可选)

默认情况下,Project Server 2003 中的“管理组”页不显示非活动用户。但在 Office Project Server 2007 中,默认情况下将显示非活动用户。因此,在完成迁移过程(也将迁移非活动用户)之后,将会在 Office Project Server 2007 中的“管理组 Project Web Access”页中看到额外用户。

如有必要,可永久删除非活动用户。

若要永久删除非活动用户,请执行以下操作:

  1. 在 Project Web Access 中,单击“服务器设置”。

  2. 在“数据库管理”部分,单击“删除企业对象”。

  3. 在“删除企业对象”页中的“您想从 Project Server 中删除什么”部分,选择“资源和用户”。

  4. 在显示的用户列表中,选择要永久删除的用户,然后单击“删除”。

修复项目货币设置

无法正确迁移项目货币是一个已知的问题。对 Project Server 2003 项目表数据库运行以下 SQL 查询来获取项目及其货币的列表。使用此信息可手动更正迁移后的货币设置。

select PROJ_NAME, PROJ_OPT_CURRENCY_SYMBOL 
  from dbo.MSP_PROJECTS where PROJ_TYPE in (0, 1, 2)

更改迁移的本地 Windows 帐户

如果具有任何本地 Windows 帐户(例如,ComputerName\Brad Joseph)并且计算机名称不再有效,请确保转到 Project Web Access“服务器设置”并使用“管理用户”选项来编辑这些帐户,以使其有效。

更新多语言查阅表格

迁移后未正确更新多语言查阅表格。对 Office Project Server 2007 的已发布数据库运行下列 SQL 语句以更正此问题。

DELETE FROM dbo.MSP_LOOKUP_TABLE_LANGUAGES WHERE LT_UID NOT IN (SELECT LT_UID FROM dbo.MSP_LOOKUP_TABLES)

DELETE FROM dbo.MSP_LOOKUP_TABLE_MASK_VALUES WHERE LT_UID NOT IN (SELECT LT_UID FROM dbo.MSP_LOOKUP_TABLES)

DELETE FROM dbo.MSP_LOOKUP_TABLE_MASK_STRUCTURES WHERE LT_UID NOT IN (SELECT LT_UID FROM dbo.MSP_LOOKUP_TABLES)

DELETE FROM dbo.MSP_LOOKUP_TABLE_VALUES WHERE LT_UID NOT IN (SELECT LT_UID FROM dbo.MSP_LOOKUP_TABLES)

DELETE FROM dbo.MSP_LOOKUP_TABLE_STRUCTURES WHERE LT_UID NOT IN (SELECT LT_UID FROM dbo.MSP_LOOKUP_TABLES)

如果您正在结合使用 Microsoft Office Project Portfolio Server 2007 和 Office Project Server 2007,则运行这些 SQL 语句来更新这些表尤其重要。如果未运行这些语句,则当您从 Office Project Portfolio Server 2007 到 Office Project Server 2007 执行导出时可能会遇到“GeneralUnhandledException”错误。此错误类似于以下内容且出现在 ULS 日志中:

PSI: LookupTable.ReadLookupTablesMultiLang Undefined Attibutes: PSError: GeneralUnhandledException Underined attributes list: System.Data.ConstraintException: Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints....

回滚迁移

如果发生下列情况之一,则可能需要进行回滚:

  • 在迁移过程的中间失败

  • Project Server 2003 中的许多数据在迁移之后都发生了更改。如果是这样,则应从头开始执行迁移过程。

由于迁移到 Office Project Server 2007 不属于就地升级,因此在迁移过程中不会修改任何 Project Server 2003 数据。因此,回滚的效果与还原干净的 Office Project Server 2007 Project Web Access 实例(可能从备份还原)的效果是一样的。然后可以再次运行迁移。

如果要重新迁移少数几个项目(可能是由于这些项目在 Project Server 2003 中发生了更改),则回滚方法是在 Office Project Server 2007 中删除这些项目然后重新迁移它们。

重要

如果全局数据迁移过程在中途停止,则需要从头开始再次运行迁移过程。迁移工具可能会由于 Project Server 2003 数据出错(例如,特定的资源不具有资源大纲代码的有效值)而中途停止。解决此问题的方法是,在 Project Professional 2003 中打开 ResGlobal,修复问题,然后再重新尝试迁移。重复此过程,直到全局迁移过程完成。一旦此过程成功完成,则表明 Project Server 2003 数据是干净的。接下来,必须清除 Office Project Server 2007 数据,并从头开始重新迁移全局数据。