41得票1回答
SLEEP_TASK是SQL Server中的等待类型,它表示什么意思?

我以前从未见过SLEEP_TASK等待类型,但今天似乎有很多这样的情况。 我不是正式的数据库管理员,只是一个懂一些DBA知识的SQL Server开发人员。上周末我们升级了服务器到10.52.2500.0 - 我想是R2SP1版本。 我在网上找到的所有信息都表明SLEEP_TASK表示服务...

16得票1回答
ASYNC_NETWORK_IO wait type is something that you should pay attention to.

在查看执行时间较长的存储过程列表时,有一个存储过程引起了最长的等待时间。然而,大部分等待时间(81%)是由于ASYNC_NETWORK_IO引起的,我知道原因:该存储过程传输了大约400MB的信息。 在文档中,它指出ASYNC_NETWORK_IO的原因是客户端无法跟上数据的涌入,这可能是真...

15得票3回答
高CXPACKET和LATCH_EX等待

我正在处理一个数据处理系统的性能问题。我已经收集了一个小时的等待统计数据,显示出大量的CXPACKET和LATCH_EX等待事件。 该系统由3个处理SQL服务器组成,这些服务器进行大量的数字计算和计算,并将数据馈送到一个中央集群服务器。处理服务器可以同时运行多达6个作业。这些等待统计数据是针...

14得票1回答
排除故障 SOS_SCHEDULER_YIELD 等待

在运行我们的企业ERP(Dynamics AX 2012)时,我注意到我们的生产环境比开发系统要慢得多。 在开发和生产环境中执行相同的操作并进行跟踪后,我确认与开发环境相比,我们的生产环境上的SQL查询执行速度非常慢(平均慢10-50倍)。 起初,我认为这是由于负载问题,并在非工作时间重新...

13得票1回答
防止由于空闲工作线程修剪而导致的THREADPOOL等待。

在阅读 Josh Darnell 的Unusual THREADPOOL Waits后,一位 Twitter 用户提到了一个未记录的追踪标志来防止修剪空闲工作者: 这个想法是,一旦SQL Server创建了足够的线程来处理最高负载,那么在这些线程在15分钟左右不再需要时,就不应该再修剪工...

11得票2回答
LATCH_EX 在资源 METADATA_SEQUENCE_GENERATOR 上等待。

我们有一个生成库存报告的流程。在客户端上,该流程会分割出可配置数量的工作线程,为报告构建一块数据块,该数据块对应于众多商店中的一个(可能是数千个,通常是几十个)。每个工作线程调用一个执行存储过程的 Web 服务。 处理每个数据块的数据库流程将一堆数据收集到一个 #Temporary 表中。在...

11得票1回答
如果禁用了内存中的锁定页面选项,大内存服务器中会出现非可屈服调度程序错误。

我们在一个SQL Server虚拟机上看到了很多“非可调度调度程序”错误。阅读Microsoft Docs上的链接,建议我们启用内存中的锁定页面。 我对内存中的锁定页面没有太多经验,并且我读了很多博客文章,都对打开它表示谨慎。 服务器详细信息: - Windows Server 2016...

10得票3回答
如何解决enq: TX - 行锁争用的问题?

我有以下情况。 我有RAC。在两个节点上都有锁。 在第一个节点上 SID EVENT USERNAME BLOCKING_SESSION ROW_WAIT_OBJ# OBJECT_NAME LOCKWAIT ...

10得票2回答
单行插入语句期间的SOS_SCHEDULER_YIELD行为导致实例性能差异。

我在虚拟机中有一个共享的SQL Server 2016 dev实例,与一个(应该是)相同的虚拟机上的共享SQL Server 2012 dev实例相比,其插入性能较差。它也与我本地的SQL Server 2016 dev实例相比较差,所以我目前假设该实例存在一些奇怪的问题,因为该服务器上的大多...

9得票2回答
间歇性的RESOURCE_SEMAPHORE_QUERY_COMPILE等待统计数据

我正在尝试解决我们在一个生产SQL服务器上遇到的间歇性CPU峰值问题。我们使用的是SQL Server 2008 R2标准版,具有28 GB RAM和4个CPU核心。当出现这种情况时,我们注意到大量的RESOURCE_SEMAPHORE_QUERY_COMPILER等待,持续大约一到两分钟,然...