60

在他出色且流行的比较图表中,ErikEJ 对SQL Server Express 2012SQL Server 2012 LocalDB进行了区分。但是,我在 MSDN 文档的其他任何地方都找不到这样的区别(官方 MS SS12 书籍MSDN SQL 版本比较页面中甚至都没有提到“LocalDB” 。)这让我怀疑 Express 和 LocalDB正如 ErikEJ 所建议的那样,并不是真正的两个独立产品,而只是同一事物的两个不同术语(这可以解释为什么在这个 MSDN 页面上,它被称为“SQL Server 2012 Express LocalDB ”)。

如果产品之间确实存在差异,谁能指出一些比较它们的官方文档?

4

3 回答 3

76

好的,我想我已经找到了自己问题的答案。(它被隐藏在SS Express 产品页面的标​​签下。)

以下是我在该页面上找到的 LocalDB 的独特之处的摘要:

  • LocalDB 是 SQL Server Express Edition 的轻量级部署选项,具有更少的先决条件和更快的安装。
  • LocalDB 具有与 SQL Express 相同的所有可编程特性,但在“用户模式”* 下与应用程序一起运行,而不是作为服务运行
  • LocalDB 不适用于多用户场景或用作服务器。(如果您需要接受远程连接或远程管理,则需要 SQL Server Express。)
  • “Express with Tools”(包括 SS Management Studio Express、Azure 等)可以与 LocalDB 一起使用,也可以不与 LocalDB 一起使用。(“Express with Advanced Services”也是如此。)

更新:我刚刚在Windows IT Pro(2012 年 7 月,第 23 页)中找到了这个有用的描述:

LocalDB 不是 SQL Server Express,也不是 SQL Server Compact。LocalDB 使用与其他版本的 SQL Server 相同的 sqlservr.exe 引擎,但它在用户模式下运行,而不是作为服务运行。LocalDB 被 SSDT 等工具用于离线开发,以确保您开发的代码与您的生产 SQL Server 数据库 100% 兼容。

如果我没看错的话,LocalDB 似乎更像是 Express 的一个配置选项,而不是一个完全独立的产品。所以很明显,如果我下载 Express(或 Express w/Tools),我可以选择安装 LocalDB 版本,据说它比完整的 Express 更容易(“零配置”)。(更新:在 VS2012 中,LocalDB 默认安装。)

根据这篇文章,另一个重要区别是“当前 Visual Studio 2010 并不能真正与 LocalDB 一起使用”。(我们必须改用 SS Management Studio,至少现在是这样。)

*(“用户模式”或“用户实例”的概念是 LocalDB 的一个关键区别。事实上,根据这篇文章,“LocalDB 可以看作是 SQL Server Express 的用户实例特性的升级。” 了解更多关于用户实例,请参阅 MSDN 博文“什么是 RANU?”

更新 - 2021 年 2 月 LocalDB 是 SQL Server Express 版本

来自官方文档

Express 版是入门级的免费数据库,非常适合学习和构建桌面和小型服务器数据驱动的应用程序。它是构建客户端应用程序的独立软件供应商、开发人员和爱好者的最佳选择。如果您需要更高级的数据库功能,SQL Server Express 可以无缝升级到其他更高端的 SQL Server 版本。SQL Server Express LocalDB 是 Express 的轻量级版本,具有所有可编程功能,在用户模式下运行,并且具有快速、零配置的安装和简短的先决条件列表。

该文档提供了版本之间功能的非常详细的比较。

于 2012-04-17T00:15:02.033 回答
15

我使用来自 ErikEJ 的表格,其中显示:SQL CE 3.5、SQL CE 4、Local DB 和 SQL Server 2012 之间的特性和差异。根据此表,Local DB 和 SQL Server 2012 之间的区别是:

安装大小:
SQL Server 2012:120 MB 下载大小;在磁盘上扩展 300 MB
本地数据库:32 MB 下载大小;160 MB 磁盘

作为服务运行
SQL Server 2012:是
本地数据库:否(作为应用程序启动的进程运行)

FILESTREAM 支持
SQL Server 2012:是
本地数据库:否


合并复制SQL Server 2012的订阅者
:是 本地数据库:否


SQL Server 2012的并发连接数
:无限 本地数据库:无限(但仅限本地)

注意:抱歉,这不是“官方文档”,但希望它对下一个董事会有用,因为它回答了有关差异的基本查询。

于 2013-11-25T11:51:59.650 回答
6

主要区别在于Server Express作为服务运行,而LocalDB不需要任何服务器或密集处理即可运行。

于 2012-08-09T18:49:09.467 回答