Sql server 使用兼容性级别较低的SQL Server是否会产生负面影响
我们有SQL Server 2008 R2,用于兼容级别设置为2005(90)的数据库 我们会在某个时候将其升级到2008年,但在此期间,我想知道,如果数据库的兼容性级别较低,这是否会对其性能产生负面影响Sql server 使用兼容性级别较低的SQL Server是否会产生负面影响,sql-server,performance,sql-server-2008-r2,database-performance,Sql Server,Performance,Sql Server 2008 R2,Database Performance,我们有SQL Server 2008 R2,用于兼容级别设置为2005(90)的数据库 我们会在某个时候将其升级到2008年,但在此期间,我想知道,如果数据库的兼容性级别较低,这是否会对其性能产生负面影响 我发现这意味着可能会有负面影响,但这是针对较旧版本的SQL Server。我正在进行SQL Server升级,我们正在努力将compat级别提高到100。我没有观察到应用程序中的性能差异。我们之所以进行更改,部分原因是为了利用SQL Server的一些新功能。我们现在处于80级,所以主要原因是
我发现这意味着可能会有负面影响,但这是针对较旧版本的SQL Server。我正在进行SQL Server升级,我们正在努力将compat级别提高到100。我没有观察到应用程序中的性能差异。我们之所以进行更改,部分原因是为了利用SQL Server的一些新功能。我们现在处于80级,所以主要原因是我们无法升级到2008 R2,除非我们在更高的级别上运行。注意不要落后于当前的compat级别,以致于无法升级数据库 我们一直在检查代码库,以删除使用不推荐语法的手动插入提示。事实证明,删除这些提示实际上提高了性能。据推测,这是因为查询优化器在过去十年中有所改进,可以比开发人员十年前选择的优化更好地进行优化。因此,我们间接地发现,增加compat级别提高了性能,但这只是因为我们必须更改应用程序代码库
一旦我们提高了compat级别,我们就可以利用新的功能来提高性能,但是我们没有发现在较低的compat级别上运行数据库比运行相同的数据库(和应用程序)的性能更低在更高的兼容性级别。您所引用的答案似乎混淆了在2000 compat模式下运行和在实际SQL 2000上运行。当我将db compat 90更新为100时,我在某些存储过程中出错,有一个Common语句在更高版本中不可接受,类似于set@value=select。。或者选择@value=,现在我忘记了,只是想提醒你