Sql server 与SQL Server 2000相比,SQL Server 2005/2008的主要优点是什么?

Sql server 与SQL Server 2000相比,SQL Server 2005/2008的主要优点是什么?,sql-server,migration,Sql Server,Migration,我们的一个客户正在升级他们的服务器,因为旧机器无法处理数据库的负载。在过去的6年中,他们一直在使用SQL2000,数据库已经增长到可以容纳几GB的数据 是否值得升级到2005年或2008年?与2000相比,新版本的主要优点是什么?老实说,主要优点是——它允许您在编写数据库的方式上有更大的灵活性,让您可以选择在过程中包含过程C或VB.NET,而不是基于集合的T-SQL。有一些新功能非常有用,比如ServiceBroker,但从性能方面来说,从2000年到2005年,您不会看到巨大的改进。a)调整数

我们的一个客户正在升级他们的服务器,因为旧机器无法处理数据库的负载。在过去的6年中,他们一直在使用SQL2000,数据库已经增长到可以容纳几GB的数据


是否值得升级到2005年或2008年?与2000相比,新版本的主要优点是什么?

老实说,主要优点是——它允许您在编写数据库的方式上有更大的灵活性,让您可以选择在过程中包含过程C或VB.NET,而不是基于集合的T-SQL。

有一些新功能非常有用,比如ServiceBroker,但从性能方面来说,从2000年到2005年,您不会看到巨大的改进。a)调整数据库,b)投资新硬件,你会感觉更好。

除了Galwegian提到的CLR集成,我的主要优点是:

  • 2005年有了更好的XML支持

另一个需要注意的区别是,与Sql 2005使用的DTS包不同,虽然类似的DTS包是一个完全不同的游戏。

取决于您使用的Sql Server版本,Sql 2005的硬件限制/上限比SQL2k中的相应版本要少

例如,SQL 2000标准版不会使用超过2Gb的内存(实际上是1.7Gb),而SQL 2005标准版没有上限(最多允许操作系统最大容量)

见:

……还有


因此:如果您运行的是standard edition+您的SQL Server 2000实例当前使用~1.6Gb RAM+您的服务器具有3Gb或更多物理RAM,则可能值得升级,因为增加内存使用会带来好处。。。(更多缓存的表数据、索引、计划等)

在线索引重建是一个很好的功能。但我认为这可能只是企业版中的一个选项。

如果您计划从SQLServer2000升级,我将跳过2005,直接转到SQLServer2008

它具有2005年的所有功能以及一些附加功能(例如,将表变量作为参数传递给存储过程的选项、新的日期类型、空间数据处理等)

有关功能的全面列表,请参阅问题

编辑


我可以看到问题已经更新,现在SQLServer2008已经包含在问题中。

将用户和模式分离是另一个好方法。在SQL 2005中,如果希望按逻辑/功能区域或类似区域而不是按数据库中的用户进行模式分离,可以创建诸如“hr”、“sales”、“accounting”、“production”等模式,然后在相应的模式下创建用户表


在SQL 2000中,架构名称与表所有者/创建者相同。

我认为Microsoft不再支持SQL Server 2000。如果我错了,很快就会……

MS SQL 2005和2008有很多大肆宣传的技术,其中之一就是能够将CLR代码填充到存储过程中。别这样

另一个“特性”是能够再次将数据库公开为Web服务;别这样

第三个特性是能够再次使用来自数据库和应用程序层的“通知”;不要这样做

您的数据库是一个bucket,它应该“存储数据”,句号为。微软在2005年和2008年推出了很多功能,我确信他们做到了,因为他们想使O/RM库的使用复杂化,从而抽象出实际的数据库供应商,以便人们可以随心所欲地更改数据库。然后,通过添加许多“愚蠢的特性”,这些特性与我们从70年代开始学习的关于数据库的每一个最佳实践背道而驰,他们设法创建了一个新的锁定,通过让人们使用他们实际上不应该使用的东西来移除供应商的锁定


其中的一部分是,在2005年和2008年可能会有很多很酷的特性(就像这里提到的一个;支持!)以及优化、错误修复等。但是要小心,这样你就不会开始使用那些会破坏你的应用程序,使你无法使用最佳实践并将你锁定的东西…:(

公共表表达式是最好的。存储过程规则也是以所有者的身份执行。XML支持现在非常重要+1我想说:如果它是一个任务关键型系统,在使用新版本的SQL Server.JMHOGood point之前等待(至少)SP1,我通常也会这样做-让其他人先对它进行压力测试;)。我们目前使用的是2005年,我认为没有必要升级到2008年,但如果我现在从2000年升级到2008年,我通常会选择2008年,我对此表示强烈反对。CLR集成很酷,但也往往过于繁忙。如果你知道什么时候使用,什么时候不使用,我同意你的说法。@Mladen-我完全同意-我看到CLR集成被误用的频率比我看到它被正确使用的频率要高。在错误的人手中,它可能是“足够的绳子”,就像其他技术一样。新技术通常被滥用,当然有些技术比其他技术更容易被滥用,在这种情况下,CLR很容易被滥用。它在sql server中仍然有其应有的地位。是的,你是对的。你可以得到“扩展支持”,但现在已经没有主流支持了。拿出你的锡箔帽!也许,像大多数其他db供应商一样,他们添加有用的特性来添加有用的特性,而不是作为邪恶阴谋的一部分。您的数据库是一个bucket,它应该“存储数据”,period是一个POV,还有其他的。