存储过程的性能真的很慢

时间:2019-04-26 02:06:46

标签: sql-server performance

我有一个SQL Server存储过程,其中包含一整批查询,这些查询过​​去在旧服务器上确实非常快,但在新服务器上现在真的很慢。我试图了解出什么问题了。

它仍然在运行很长的指令集的中间,我已经运行了一些查询来找出瓶颈所在。

它具有以下统计信息:

Stored procedure performance 1

我运行了一个不同的查询,它提供了相似的结果:

Stored procedure performance 2

但这意味着什么?知道我接下来要做什么吗?

编辑:只需阅读本文:https://sqlperformance.com/2014/06/io-subsystem/knee-jerk-waits-pageiolatch-sh,它表明CXPACKET类型是由并行表扫描引起的,而PACKETIOLATCH_SH是由于IO子系统(磁盘或网络)问题引起的。仍在调查中。

1 个答案:

答案 0 :(得分:0)

从SQL Server 2014开始,有一个新的查询优化器。这可能是SP表现不佳的原因。 在设置数据库兼容性级别110之后,尝试执行SP。

ALTER DATABASE your_database SET COMPATIBILITY_LEVEL=110;
GO

或者,我可以通过添加跟踪标记OPTION(QUERYTRACEON 9481)来更改您的SP