我正在尝试在 Windows 2012 R2 上从 SQL 2014 就地升级到 SQL 2017,标准版(是的,我知道...) ,没有选项,只有共享功能和可再分发功能的条目变灰(无复选框)。因为我已经升级了 SQL Browser/Writer,所以此时点击 Next> 会出现验证错误对话框,安装程序会显示“没有选择要升级的功能”。我已经运行了系统配置检查报告和迁移助手——都是绿色的。summary.txt 文件显示它发现了数据库引擎服务、Reporting Services - Native、SSMS 和 Adv_SSMS,它们都是 SQL 2014。
安装程序很好。如果我开始安装 2017 的命名实例,它会为我提供可供选择的功能。我对 2016 年的安装程序做了同样的事情,但遇到了同样的问题。
此时,除了卸载2014并安装2017之外,我不知道下一步该怎么做,这很痛苦。请注意,我们成功卸载了 SSRS 2014 并安装了 2017,尽管我们在遇到引擎升级障碍时使用快照回滚了该更改。
感谢任何故障排除的想法。
难不成你的SQL 2014是32位的?SQL 2017 仅提供 64 位版本:
SQL Server 2017 (14.x) 仅适用于 64 位平台。不支持跨平台升级。您不能使用 SQL Server 安装程序将 SQL Server 的 32 位实例升级到本机 64 位实例。但是,如果数据库未在复制中发布,您可以从 32 位 SQL Server 实例备份或分离数据库,然后将它们还原或附加到新的 SQL Server(64 位)实例。您必须在 master、msdb 和模型系统数据库中重新创建所有登录名和其他用户对象。
回来回答我自己的问题。
在这种情况下,解决方案是执行命令提示符升级。命令就这么简单:
setup.exe /Q /ACTION=UPGRADE /IACCEPTSQLSERVERLICENSETERMS /INSTANCENAME=MSSQLSERVER
在我的例子中,因为服务器上仍然有一个 SSRS 2014 实例,我们必须首先完成整个 SSRS 2014 卸载/SSRS 2017 安装过程(无论如何这在我们的计划中),因为升级标识这个实例以下错误:
消息:/IAcceptRSUninstall 命令行参数丢失或未设置为 true。它是您正在运行的设置操作的必需参数。通过指定此参数,您确认 Reporting Services 将被卸载并且您已执行任何必要的备份和/或迁移。
我真的相信命令提示符升级会失败,只是希望日志中有更好的错误消息,这就是为什么我们懒得先执行 SSRS 步骤。但是,一旦我们完成了,2017 年的升级就成功运行了。