用于 LocalDB 的 SQL Server 2014 Express .MSI 无法在目标 vm 上安装

Posted

技术标签:

【中文标题】用于 LocalDB 的 SQL Server 2014 Express .MSI 无法在目标 vm 上安装【英文标题】:SQL Server 2014 Express .MSI for LocalDB failed to install on a target vm 【发布时间】:2015-12-30 21:23:10 【问题描述】:

在进一步调查后重写了帖子。错误信息是:

此产品安装失败,因为该操作系统不支持该产品。有关支持的配置的信息,请参阅产品文档。

安装目标是 Hyper-V 客户机,如下所示:2G RAM,C: 驱动器上 14.5 GB 可用空间,2.5 GHz CPU。 .NET 3.5 已开启。

在此页面https://www.microsoft.com/en-us/download/details.aspx?id=42299 上,以下注释让我感到困惑(粗体是我的重点):

注意:Microsoft® SQL Server® 2014 Express 包括 32 位和 64 位版本。 SQLEXPR32_x86 是一个较小的包,仅可用于将 SQL Server 2014 Express 安装到 32 位操作系统上。 SQLEXPR_x86 是同一产品,但支持安装到 32 位和 64 位 (WoW) 操作系统。 SQLEXPR_x64 是原生 64 位 SQL Server 2014 Express,仅支持安装到 64 位操作系统系统。这些包之间没有其他区别。 IA64 系统不支持 Microsoft® SQL Server® 2014 Express。

措辞似乎表明 x86.exe 可以在两个 32/64 位系统上运行,这与我的发现一致。但我认为这也表明 32bit.msi 也适用于 32/64 位系统。我开始相信我误解了,并希望确认错误是我对笔记的阅读。

【问题讨论】:

【参考方案1】:

您的错误消息回答了您的问题。您尝试将其安装在不受支持的操作系统上。查看列出要求的https://msdn.microsoft.com/en-us/library/ms143506(v=sql.120).aspx。似乎在 Hyper-V 环境中,所有版本的 SQL 2014 仅在 Windows 2008 SP2 上受支持。 2008 R2 SP1 或 2012 操作系统。

【讨论】:

谢谢马修,但在我将此标记为答案之前,请参阅上面的注释(我在您发布时发布的 :-))。我查看了链接并阅读了它,但我成功地在我的客人上安装了 SQL 2014,所以现在我真的很困惑。不知道该去哪里。 我想知道您提到的虚拟化要求是否适用于 Hyper-V 主机。即,Hyper-V 可以托管在 Win 8/10 操作系统上,虽然它可以在这些操作系统上运行,但它不像在服务器上运行时那样可预测,因此您发现了限制。但我希望来宾机器能够正常运行并接受 SQL,正如我上面提到的后续测试所表明的那样。 @Alan 在看到您的编辑并重新阅读页面后,我认为您是对的。 MSI 和 EXE 安装之间应该没有区别,因为它们只是不同的安装向导(EXE 有时是 MSI 的引导程序)。不幸的是,我没有 Hyper-V 设置,因此无法测试您的发现。 我能够将 64bitLocalDB.msi 集成到我的 setup.exe 中,并且它确实成功安装在了 VM 上。根据经验,这表明我只是不理解微软的笔记。在我确认这一点之前,我不会用答案更新这篇文章 - 虽然可能不会很多,但我相信还有其他人遇到过这个问题。最后,我不认为是虚拟机,而是 32/64 位问题。感谢您的 cmets。【参考方案2】:

我的特殊问题是误解了 32 位 MSI 可以在 64 位操作系统上运行。一旦我更改为 64 位 MSI SQL Express 2014,就可以很好地加载到 VM 中。 32 位 x86 .exe 安装文件实际上可以在 64 位操作系统上运行,但不是 MSI 安装文件。

【讨论】:

【参考方案3】:

注意有两个不同的_x86 文件名:SQLEXPR32_x86 仅适用于 32 位系统。 SQLEXPR_x86(注意缺少的“32”)可以在 64 位和 32 位系统上运行,但仍作为 32 位进程运行。

【讨论】:

以上是关于用于 LocalDB 的 SQL Server 2014 Express .MSI 无法在目标 vm 上安装的主要内容,如果未能解决你的问题,请参考以下文章

为 SQL Server LocalDB 创建永久别名

009.Working with SQL Server LocalDB --在sql server localdb 上操作数据

LocalDB SQL Server 2014 Express 创建 2 个实例 (localdb)\ProjectsV12 & (localdb)\MSSQLLocalDB?

LocalDB SQL Server 2014 Express 创建 2 个实例 (localdb)\ProjectsV12 & (localdb)\MSSQLLocalDB?

怎么卸载Microsoft SQL Server 2012LocalDB

SQL Server 2012 Express LocalDB