【问题标题】:Query runs for hours查询运行数小时
【发布时间】:2017-08-23 06:46:48
【问题描述】:

在记录失败消息之前,某些通宵执行的查询会运行整整 5 小时。这些查询从也是 SQL 服务器的链接服务器检索记录。当我早上运行相同的查询时,它会在一分钟内执行。两个服务器中的 timeout 属性都设置为 1 小时。所以我试图了解它是如何执行一个多小时的,以及它是如何在每次 5 小时后停止的。请帮助我了解我缺少什么。

谢谢。

【问题讨论】:

  • 你选择的@@version 是什么?
  • 在什么帐号下执行“隔夜执行的查询”?它们是由 Agent 调度和执行的吗?
  • 版本 - SQL Server 2014 SP1。查询放置在使用计划的 SQL Server 代理作业运行的过程中。
  • 版本可以,但是这个作业是在哪个用户下执行的?早上有没有尝试在同一个账号下执行sp?

标签: sql-server timeout linked-server


【解决方案1】:

对于在特定会话/窗口上运行的特定查询,如果您在查询中使用事务方法,事务尚未处于已提交状态,因此应在再次执行之前回滚。

原因 2 - 执行查询时,链接服务器功能尚未正常工作。

【讨论】:

  • 1.不使用事务。 2.如果链接服务器不可用,会抛出异常。
猜你喜欢
  • 2015-07-20
  • 2020-03-12
  • 2021-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-30
相关资源
最近更新 更多