加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 运行兼容性级别为80的SQL Server 2005数据库是否

发布时间:2020-12-12 08:42:31 所属栏目:MsSql教程 来源:网络整理
导读:我们的软件必须能够在SQL Server 2000和2005上运行.为了简化开发,我们运行SQL Server 2005数据库的兼容性级别80.但是,在某些情况下,SQL 2005上的数据库性能似乎比SQL 2000慢还没有使用基准确认这一点).将兼容级别升级到90可提高SQL 2005服务器的性能? 解决方
我们的软件必须能够在SQL Server 2000和2005上运行.为了简化开发,我们运行SQL Server 2005数据库的兼容性级别80.但是,在某些情况下,SQL 2005上的数据库性能似乎比SQL 2000慢还没有使用基准确认这一点).将兼容级别升级到90可提高SQL 2005服务器的性能?

解决方法

我想我读到某处,SQL Server 2005数据库引擎应该比SQL Server 2000引擎快约30%.可能是,您必须以兼容性模式90运行数据库才能获得这些好处.

但是我在两个场景中偶然发现,与mssql 2000相比,使用mssql 2005时性能会大幅下降:

>参数嗅探:使用存储过程时,sql server会在当时计算出一个执行计划,首先调用该过程.执行计划取决于为该呼叫给出的参数值.在我们的例子中,通常需要10秒钟的程序在mssql 2005下运行数小时.看看here和here.>当使用分布式查询时,mssql 2005的行为与远程服务器上有关排序顺序的假设有所不同.默认行为是服务器将查询中涉及的整个远程表复制到本地tempdb,然后在本地执行连接.解决方法是使用OPENQUERY,您可以在其中精确控制从远程服务器传输的结果集.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读