升级数据库和 Project Web App 网站集 (Project Server 2013)

总结:如何将所需的 Project Server 2010 数据库和Project Web App网站集升级到 Project Server 2013。
适用于:Project Server 2013

本文是升级到 Project Server 2013 的系列文章之一。 建议在尝试本文中的任何过程之前阅读以下文章:

还原 Project Server 2010 数据库和包含Project Web App网站数据的 SharePoint 内容数据库后,可以运行必要的步骤,将数据和Project Web App网站集升级到 Project Server 2013。 实际的升级过程可以分为两个不同的阶段:

  • SharePoint 升级阶段:

    • 检查包含项目网站数据的 SharePoint 内容数据库,了解可能导致升级失败的错误。

    • 附加和升级 SharePoint 内容数据库。

    • 获取要升级的网站集的所有权。

    • 将用户从 Windows 经典身份验证迁移到基于声明的身份验证 (可选) 。

    • 在 SharePoint 站点中查看可能导致升级失败的问题。

    • 升级 SharePoint 网站。

  • Project Server 升级阶段:

    • 将 Project Server 2010 数据库合并到Project Web App数据库。

    • 将Project Web App数据库附加到 Web 应用程序。

    • 升级Project Web App数据库。

    • 装载Project Web App实例。

    • 升级Project Web App实例。

    • 启用 PWA 功能。

SharePoint 升级阶段

  步骤 必需 Microsoft PowerShell cmdlet
1
检查包含项目网站数据的 SharePoint 内容数据库,了解可能导致升级失败的错误。
Test-SPContentDatabase
2
附加和升级 SharePoint 内容数据库。
Mount-SPContentDatabase
3
获取要升级的网站集的所有权。
Set-SPSite
4
将用户从 Windows 经典身份验证迁移到基于声明的身份验证 (可选) 。
注意:仅当 Project Server 2010 Web 应用程序使用经典Windows 身份验证且 Project Server 2013 Web 应用程序使用基于声明的身份验证时,才需要此步骤。
(Get-SPWebApplication<SPWebAppPipeBind>) 。MigrateUsers ($true)
5
检查 SharePoint 网站集中是否存在可能导致升级失败的问题。
Test-SPSite
6
升级 SharePoint 网站。
Upgrade-SPSiteUpgrade-SPSite

1. 检查 SharePoint 内容数据库中可能导致升级失败的错误

运行 Mount-SPContentDatabase cmdlet 将 SharePoint 2010 数据库连接到场之前,运行 Test-SPContentDatabase cmdlet 以检查 SharePoint Server 2010 内容数据库。 Test-SPContentDatabase cmdlet 是一种非破坏性测试操作,用于检查数据库并发布阻止升级数据库的错误。

Test-SPContentDatabase -Name <contentdbName> -WebApplication <URL> 
-ServerInstance <servername>

例如:

Test-SPContentDatabase -Name PWA_ContentDB -WebApplication https://Contoso:80  -ServerInstance SQLServer1
必需参数
-名称
-WebApplication
-ServerInstance

运行 Test-SPContentDatabase cmdlet 会检查 SharePoint Server 2010 内容数据库,并在数据中发布任何可能的错误。 它提供错误说明、可能的补救措施以及 UpgradeBlocking 标志,以注意错误是否会阻止升级数据库。 请务必解决 UpgradeBlocking 标志设置为 True 值的任何错误。

2. 附加和升级 SharePoint 内容数据库

运行 Mount-SPContentDatabase Microsoft PowerShell cmdlet,将 SharePoint Server 2010 数据库连接到指定的 Web 应用程序,并升级数据库。 确保用于附加数据库的帐户是要升级的内容数据库的 db_owner 固定数据库角色的成员。

注意

在升级期间,不支持使用 SharePoint 管理中心页面附加内容数据库。

Mount-SPContentDatabase -Name <contentdbName> -WebApplication <URL> -DatabaseServer <servername> -NoB2BSiteUpgrade

例如:

Mount-SPContentDatabase -Name PWA_ContentDB -WebApplication https://Contoso:80 -DatabaseServer SQLServer1 -NoB2BSiteUpgrade
必需参数
-名称
-WebApplication
-DatabaseServer
-NoB2BSiteUpgrade

3.将你的帐户添加为要升级的 PWA 网站集的辅助所有者

必须将自己添加为 PWA 网站集的所有者。 这是必须验证然后升级网站集的后续步骤所必需的。

Set-SPSite  -Identity <sitecollectionName> -SecondaryOwnerAlias <account>

例如:

Set-SPSite -Identity https://contoso/pwa -SecondaryOwnerAlias "contoso\\FarmAdmin"
必需参数
-Identity
-SecondaryOwnerAlias

4. 将使用 Windows 经典身份验证模式的用户迁移到基于声明的身份验证 (可选)

如果要在升级到 Project Server 2013 时将使用 Windows 经典身份验证的 Project Server 2010 用户迁移到基于声明的身份验证,则需要运行以下Windows PowerShell cmdlet。 如果未执行此操作,则升级后,用户将无法登录到 Project Web App。

(Get-SPWebApplication <webappURL>).migrateUsers($true)

例如:

(Get-SPWebApplication https://contoso:80).migrateUsers($true)

有关此方法的详细信息,请参阅 SPWebApplication.MigrateUsers 方法

5.检查 PWA 网站集中是否存在可能导致网站升级失败的问题

Project Web App站点不支持 SharePoint Server 2010 版本模式。 必须升级 PWA 的网站集才能在 Project Server 2013 中工作。 请务必注意,此要求仅适用于 PWA,并且核心 SharePoint 网站集不需要此要求。

升级网站集之前,建议运行 Test-SPSite cmdlet,以验证网站集是否有任何可能导致网站集升级失败的问题。 可以查看结果并修复任何升级阻塞问题。

Test-SPSite -Identity <URL>

例如:

Test-SPSite -Identity https://contoso/pwa
必需参数
-Identity

结果显示它通过测试发现的“FailedWarningCounts”数,但不会显示有关失败的信息。 若要查找有关失败的详细信息,可以导航到 PWA 网站设置页,并通过执行以下操作对网站集运行运行状况检查:

对 PWA 网站集运行运行状况检查以查看升级警告信息

  1. 在浏览器窗口中,输入站点的 URL (例如, https://contoso/pwa). 在 URL 的末尾,键入以下内容:/_layouts/15/settings.aspx。 在此示例中,完整的 URL 为 https://contoso/pwa/_layouts/15/settings.aspx. 这为你提供了指向“网站设置”页面的直接链接。 无法显示 PWA 网站页面,因为它尚未升级,并且仍处于 SharePoint Server 2010 模式。

  2. 在“PWA 网站设置”页上的“ 网站集管理 ”部分中,单击“ 网站集运行状况检查”。

    注意

    请注意,页面顶部显示一条消息,指出页面处于 SharePoint 2010 模式,因为网站集尚未升级。

  3. 在“运行网站集运行状况检查”页上,单击“ 运行检查 ”,开始对网站集进行运行状况检查。

  4. 运行状况检查的结果将显示 有关 Test-SPSite cmdlet 发现的任何警告的详细信息。 例如,它会告诉你是否有任何页面可能已自定义,并可能导致升级后出现意外行为。 它将提供页面 URL 以及将页面重置为默认值的选项。

    谨慎

    在使用 选项将页面重置为默认值之前,请确保跟踪在页面上实现的自定义,以便在升级后可以手动重新创建它们。 将页面重置为默认值会将页面返回到默认模板,并将删除在页面上实现的自定义项。

6. 从 SharePoint 2010 模式升级Project Web App网站

检查 PWA 网站集并更正可能导致升级失败的任何问题后,可以运行 Upgrade-SPSite Microsoft PowerShell cmdlet 将 PWA 网站升级到 SharePoint 2013。

Upgrade-SPSite -Identity <URL> -versionupgrade

例如

Upgrade-SPSite -Identity https://contoso/pwa -versionupgrade
必需参数
-Identity
-versionupgrade

Project Server 升级阶段

完成 SharePoint 升级阶段后,您将能够连接到 PWA 网站,但无法查看任何项目数据,因为 Project Server 2010 数据库尚未连接和升级。 使用 Project Server 升级阶段中的以下步骤完成升级。

  步骤 必需 Microsoft PowerShell cmdlet
1
将 Project Server 2010 数据库合并到 Project Project Web App 数据库
Convertto-SPProjectDatabase
2
将Project Web App数据库附加到 Web 应用程序。
Mount-SPProjectDatabase
3
检查Project Web App数据库是否存在错误
Test-SPProjectDatabase
4
升级Project Web App数据库
Upgrade-SPProjectDatabase
5
装载Project Web App实例
Mount-SPProjectWebInstance
6
检查Project Web App实例是否存在错误
Test-SPProjectWebInstance
7
升级Project Web App实例
Upgrade-SPProjectWebInstance
8
启用 PWA 功能
Enable-SPfeature

1. 将 Project Server 2010 数据库合并到Project Web App数据库

运行 Convertto-SPProjectDatabase Microsoft PowerShell cmdlet,将还原的 Project Server 2010 数据库合并到单个 Project Server 2013 Project Web App 数据库。 此 cmdlet 还将新的 Project Server 2013 Project Web App 数据库连接到 Project Server 2013 Web 应用程序。

Convertto-SPProjectDatabase -WebApplication <URL> -Dbserver <databaseServerName> -ArchiveDbname<ArchivedbName> -DraftDbname<DraftdbName> -PublishedDbname<PublisheddbName> -ReportingDbname<ReportingdbName> -ProjectServiceDbname<ProjectWebAppdbName> 

例如:

Convertto-SPProjectDatabase -WebApplication https://contoso:80 -Dbserver SQLServer1 -ArchiveDbname ContosoProjectArchived -DraftDbname ContosoProjectDraft -PublishedDbname ContosoProjectPublished -ReportingDbname ContosoProjectReporting -ProjectServiceDbname ContosoProjectWebApp1 
必需参数
-WebApplication
-Dbserver
-ArchiveDbname
-DraftDbname
-PublishedDbname
-ReportingDbname
-ProjectServiceDbname

运行 cmdlet 时,系统会提示你确认要继续。 键入 Y 以继续。

成功运行此 cmdlet 后,你将看到“项目数据库转换已完成”的确认消息。你还将在运行 SQL Server 的计算机上看到新的 Project Web App 数据库。

2. 将 Project Services 数据库附加到 Web 应用程序

运行 Mount-SPProjectDatabase Microsoft PowerShell cmdlet,将新的 Project Web App 数据库附加到之前在 Project Server 2013 环境中创建的 Web 应用程序。

Mount-SPProjectDatabase -Name <ProjectWebAppdbName> -WebApplication<URL> -DatabaseServer <databaseServerName>

例如:

Mount-SPProjectDatabase -Name ContosoProjectWebApp1 -WebApplication https://contoso:80 -DatabaseServer SQLServer1
必需参数
-名称
-WebApplication
-DatabaseServer

Mount-SPProjectDatabase cmdlet 完成后,它将返回到 Microsoft PowerShell 命令提示符。 目前,成功完成后不会看到确认消息。

3.检查Project Web App数据库是否存在可能导致升级失败的错误

运行 Test-SPProjectDatabase cmdlet,检查Project Web App数据库是否存在可能导致升级此数据库失败的问题。 Test-SPProjectDatabase cmdlet 是一个非破坏性的测试操作,它将检查数据库,并发布将阻止数据库升级的错误。

Test-SPProjectDatabase -Name <contentdbName> -DatabaseServer <DBServerName>

例如:

Test-SPProjectDatabase -Name ContosoProjectWebApp1 -DatabaseServer SQLServer1
   
-名称
指定Project Web App数据库的名称。
-Databaseserver
指定Project Web App数据库所在的数据库服务的实例。
键入的值必须为有效的 GUID,如 12345678-90ab-cdef-1234-567890bcdefgh;SQL Server 实例的有效名称(例如,DBSvrInstance1);或者有效 SPDatabaseServiceInstance 对象的实例。

运行 Test-SPProjectDatabase cmdlet 将检查Project Web App数据库,并在数据中发布任何可能的错误。 它提供错误说明、可能的补救措施以及 UpgradeBlocking 标志,以注意错误是否会阻止升级数据库。 请务必解决 UpgradeBlocking 标志设置为 True 值的任何错误。

4.升级Project Web App数据库

运行 Upgrade-SPProjectDatabase Microsoft PowerShell cmdlet,将新的 Project Web App 数据库升级到 Project Server 2013。 在步骤 1 中,Convertto-SPProjectDatabase 将四个 Project Server 2010 数据库合并到 Project Web App 数据库。

Upgrade-SPProjectDatabase -Name <ProjectWebAppdbName> -WebApplication <URL> -DatabaseServer <databaseServerName>

例如:

Upgrade-SPProjectDatabase -Name ContosoProjectWebApp1 -WebApplication https://contoso:80 -DatabaseServer SQLServer1
必需参数
-名称
-WebApplication
-DatabaseServer

运行 cmdlet 时,系统会提示你确认要继续。 键入 Y 以继续。

Upgrade-SPProjectDatabase cmdlet 完成后,它将返回到 Microsoft PowerShell 命令提示符。 目前,成功完成后不会看到确认消息。

5.装载 Project Web App 实例

运行 Mount-SPProjectWebInstance Microsoft PowerShell cmdlet,将新的 Project Web App 数据库连接到 Project Server 2013 中的 Project Web App 实例。

Mount-SPProjectWebInstance -DatabaseName <ProjectWebAppdbName> -SiteCollection<URL> -DatabaseServer <databaseServerName>

例如:

Mount-SPProjectWebInstance -DatabaseName ContosoProjectWebApp1 -SiteCollection https://contoso/pwa -DatabaseServer SQLServer1 
必需参数
-DatabaseName
-SiteCollection
-DatabaseServer

运行 cmdlet 时,系统会提示你确认要继续。 键入 Y 以继续。

6.检查Project Web App实例中是否存在可能导致升级失败的问题

在尝试升级 Project Web App 实例之前,请运行 Test-SPProjectWebInstance Microsoft PowerShell cmdlet,以检查Project Web App实例中可能导致升级失败的问题。

此 cmdlet 检查是否存在项目商业智能 (BI) 中心是否存在所有项目网站的问题,或者队列中是否存在未处理的作业和队列状态,以及项目工作区的问题。 测试结果显示在 Microsoft PowerShell 中,但如果将结果导出到文本文件,则信息更具可读性。 使用结果解决“FailedWarning”状态的任何问题。

Test-SPProjectWebInstance -Identity <URL or Site ID>

例如:

Test-SPProjectWebInstance -Identity https://contoso/pwa
必需参数
-Identity

7.升级 Project Web App 实例

运行 Upgrade-SPProjectWebInstance Microsoft PowerShell cmdlet,将 Project Web App 实例升级到 Project Server 2013。

此 cmdlet 检查是否存在项目商业智能 (BI) 中心是否存在所有项目网站的问题,或者队列中是否存在未处理的作业和队列状态,以及项目工作区的问题。 测试结果将显示在 Microsoft PowerShell 中,但如果将结果导出到文本文件,则信息将更具可读性。 使用结果解决“FailedWarning”状态的任何问题。

Upgrade-SPProjectWebInstance -Identity <URL or site ID>

例如:

Upgrade-SPProjectWebInstance -Identity https://contoso/pwa
必需的参数
-Identity

运行 cmdlet 时,系统会提示你确认要继续。 键入 Y 以继续。

成功运行此 cmdlet 后,会看到一条确认消息“升级单个项目网站已完成”。

8. 启用Project Web App功能

运行 Enable-SPFeature Microsoft PowerShell cmdlet 以在网站集上启用 PWA 网站功能。

Enable-SPFeature -Identity pwasite -URL <ProjectSiteCollection>

例如:

Enable-SPFeature -Identity pwasite -URL https://contoso/PWA
必需的参数
-Identity
-Url

Enable-SPFeature cmdlet 完成后,它会返回到 Microsoft PowerShell 命令提示符。 目前,成功完成后不会看到确认消息。

打开Project Web App网站 URL 以查看升级后的站点和数据。

Project Server 论坛和文档反馈

如果还有其他问题,请尝试访问 Project 论坛。 在 Project 论坛上,你可以与其他参与者、Project MVP 以及 Project 社区专家讨论你遇到的问题。

如果您想提供关于此文章的反馈,请在此页面结尾处的“此文章是否有帮助?”选择“是”或“否”选项,然后在出现的框中键入反馈。

此反馈工具在 TechNet 上每篇 Project Server 库文章的结尾处出现。

另请参阅

计划升级到 Project Server 2013

Project Server 2013) 升级 (新增功能

准备环境以 (Project Server 2013) 升级

还原 Project Server 2010 场数据库以便升级 (Project Server 2013)

创建 Project Server 2010 场数据库的备份副本以 (Project Server 2013)