69

Microsoft 的 SQL Server 2005 和 SQL Server 2008 之间的主要区别是什么?

是否有任何令人信服的升级理由(任何版本,因为我有一个客户有多个版本)?或者是否有一个网站可以比较两台服务器的图表或要点?

另外,这两个版本的Express版本有什么值得注意的地方吗?

4

11 回答 11

84
  • 透明数据加密。加密整个数据库的能力。
  • 备份加密。在备份时执行以防止篡改。
  • 外部密钥管理。将密钥与数据分开存储。
  • 审计。监控数据访问。
  • 数据压缩。减少事实表大小并提高性能。
  • 资源总督。限制用户或组消耗高级别或资源。
  • 热插拔 CPU。即时添加 CPU。
  • 表演工作室。性能监控工具的集合。
  • 安装改进。磁盘映像和服务包卸载选项。
  • 动态发展。新的 ADO 和 Visual Studio 选项以及 Dot Net 3。
  • 实体数据服务。业务线 (LOB) 框架和实体查询语言 (eSQL)
  • LINQ。开发查询语言,用于访问 SQL 和 XML 等多种类型的数据。
  • 数据同步。开发经常断开连接的应用程序。
  • 大 UDT。UDT 没有大小限制。
  • 日期和时间。新数据类型:日期、时间、日期时间偏移。
  • 文件流。用于管理二进制数据的新数据类型 VarBinary(Max) FileStream。
  • 表值参数。将整个表传递给存储过程的能力。
  • 空间数据。用于存储纬度、经度和 GPS 条目的数据类型。
  • 全文搜索。原生索引、作为元数据的词库和备份能力。
  • SQL Server 集成服务。改进的多处理器支持和更快的查找。
  • 合并。TSQL 命令结合了插入、更新和删除。
  • SQL Server 分析服务器。堆栈改进,更快的块计算。
  • SQL Server 报告服务器。改进的内存管理和更好的渲染。
  • Microsoft Office 2007。使用 OFFICE 作为 SSRS 模板。SSRS 到 WORD。
  • SQL 2000 支持结束。对 SQL 2000 的主流支持即将结束。

(好的介绍文章第 1部分、第 2部分、第 3 部分。至于令人信服的原因,这取决于您使用 SQL Server 的目的。您需要分层数据类型吗?您当前是否将文件存储在数据库中并希望切换到SQL Server 的新文件流功能?您可以通过打开数据压缩来使用更多磁盘空间吗?

我们不要忘记合并数据的能力。

于 2008-10-13T18:34:06.860 回答
13

请注意,许多真正的杀手级功能仅在企业版中。数据压缩和备份压缩是我最喜欢的两个 - 它们立即为您提供免费的性能改进。数据压缩减少了您必须执行的 I/O 量,因此大量查询速度提高了 20-40%。CPU 使用率上升,但在当今的多核环境中,我们通常拥有更多的 CPU 能力,但没有更多的 IO。无论如何,这些仅在企业中。

如果您只打算使用标准版,那么大多数改进都需要更改您的应用程序代码和 T-SQL 代码,因此销售起来并不那么容易。

于 2008-10-19T01:01:39.943 回答
5

具有更高声誉的人可以将其复制到主要答案中:

  • 更改跟踪。允许您获取有关自特定版本以来哪些行发生的更改的信息。
  • 更改数据捕获。允许捕获和查询所有更改。(企业)
于 2008-10-13T18:51:57.620 回答
5

我想这取决于你的角色

作为开发者的我:

  • 合并声明
  • 报告服务改进
  • 日期/时间更改

编辑,后期更新,使用后

  • 过滤索引
  • 表值参数
  • 没有 IIS 的 Reporting Services
于 2008-10-13T18:53:00.207 回答
5

我在PASS 2008中参加了一堆 SQL Server 2008 会谈,从我的角度来看,唯一的“杀手级功能”是扩展事件。

有很多很棒的改进,但对我来说,这是唯一一个接近改变游戏规则的改进。表值参数和合并可能是我的下一个最爱。日常,IntelliSense是一个巨大的胜利。但这并不是真正特定于 SQL Server 2008,只是 SQL Server 2008 工具集(其他工具可以为您提供针对 SQL Server 2005、2000 等的类似 IntelliSense)。

于 2009-05-02T16:49:38.210 回答
4

添加了新功能。但是,你必须看看它是否值得升级。不过, Management Studio 2008 中有一些很好的改进,尤其是查询编辑器的智能感知。

于 2008-10-13T18:21:39.287 回答
4

SQL 2008 还允许您禁用特定表的锁升级。我发现这在经常更新的小型表上非常有用,在这些表中锁可能会升级,从而导致并发问题。在 SQL 2005 中,即使在删除语句上使用 ROWLOCK 提示,锁也可以升级,这可能导致死锁。在我的测试中,由于 SQL 2005 上的锁升级,我开发的一个应用程序在小表操作期间出现并发问题。在 SQL 2008 中,这个问题消失了。

记住处理大量行锁的潜在开销仍然很重要,但是在需要时可以选择停止升级非常有用。

于 2008-11-04T21:29:48.060 回答
3

我的最爱之一是过滤索引。现在,我可以为最关键的查询创建闪电般的快速覆盖索引,而对 DML 语句的影响很小。

/哈坎·温瑟

于 2009-06-25T07:34:33.000 回答
3

SQL Server 2008 引入了四种新的日期和时间数据类型,包括:

* DATE: As you can imagine, the DATE data type only stores a date in the format of YYYY-MM-DD. It has a range of 0001-01-01 through 9999-12-32, which should be adequate for most business and scientific applications. The accuracy is 1 day, and it only takes 3 bytes to store the date.
* TIME: TIME is stored in the format: hh:mm:ss.nnnnnnn, with a range of 00:00:00.0000000 through 23:59:59:9999999 and is accurate to 100 nanoseconds. Storage depends on the precision and scale selected, and runs from 3 to 5 bytes.
* DATETIME2: DATETIME2 is very similar to the older DATETIME data type, but has a greater range and precision. The format is YYYY-MM-DD hh:mm:ss:nnnnnnnm with a range of 0001-01-01 00:00:00.0000000 through 9999-12-31 23:59:59.9999999, and an accuracy of 100 nanoseconds. Storage depends on the precision and scale selected, and runs from 6 to 8 bytes.
* DATETIMEOFFSET: DATETIMEOFFSET is similar to DATETIME2, but includes additional information to track the time zone. The format is YYYY-MM-DD hh:mm:ss[.nnnnnnn] [+|-]hh:mm with a range of 0001-01-01 00:00:00.0000000 through 0001-01-01 00:00:00.0000000 through 9999-12-31 23:59:59.9999999 (in UTC), and an accuracy of 100 nanoseconds. Storage depends on the precision and scale selected, and runs from 8 to 10 bytes.

http://soft-engineering.blogspot.com/

于 2010-12-27T10:34:38.453 回答
2

新功能真的很棒,它符合当今时代的非常重要的因素。对于 .net 的人来说,使用 SQL Server 总是一件好事,我希望使用最新版本我们将拥有更好的安全性和更好的性能,以及引入压缩数据库大小的功能。备份加密实用程序也是现象。

再次感谢微软在软件方面的伟大想法:)

于 2010-08-18T14:02:19.097 回答
2

在过去的几个月里,丹佛 SQL Server 用户组就 SQL 2008 的新功能做了一些非常好的演示,其中包括 Paul Nielsen 上周刚从雷德蒙德的“Jump Start”回来后不久发表的一篇演讲(如果我记得的话)事件的名称正确)。

关于 SQL 2008 的所有“新特性”的一些警告,确定哪些特性将出现在各个版本中的分类仍在进行中。许多/大多数新的/非常酷的功能,如数据压缩、分区索引、策略等,只会出现在企业版中。除非您计划运行企业版,否则 CTP 中的许多功能可能不会出现在 SQL 2008 标准等中。

关于其他小但经常被忽视的问题 - SQL 2008 将只有 64 位,如果您购买新硬件不应该是一个问题,但如果您打算使用现有硬件......另外,如果你有对第三方驱动程序(例如 oracle)的依赖最好确保 64 位版本可用/有效

于 2012-06-21T05:54:46.187 回答