SQL Server作业和计划 - 每个作业或重新使用的新计划?

时间:2018-04-10 10:13:09

标签: sql-server

这不是一个技术问题,但我想知道其他人如何处理SQL Server中与SQL Agent相关的计划。

就个人而言,我喜欢创建一系列时间表,然后将它们重复用于各种工作。

举个例子,我喜欢用以下方式命名我的日程表:

  • 每日 - 午夜至午夜每15秒
  • 每日 - 03:20至23:55之间每15秒
  • 每日 - 从午夜到午夜每22分钟
  • 每日 - 每3小时一次 - 从03:30开始到23:59:59
  • 每日 - 从00:00:05起每30秒

它并不那么严格,但它有助于我更好地理解时间表。

然后,我喜欢将我的工作与现有的时间表相关联(团队中的规则是:不要修改时间表) 所以我最终得到了许多与众多工作挂钩的时间表。

与同事讨论这个问题并想知道什么是正确的方法,最有效的方法,我们测试了一些东西。 我认为令人惊讶的一种行为如下:

  • 创建新工作
  • 在此过程中,创建新计划并将其与该作业相关联
  • 运行一次工作(我的是#34; SELECT 1作为一个")以确保
  • 然后删除该SQLAgent作业

我原本希望保留时间表,但事实证明新创建的时间表也会被删除!

其他人对此感觉如何?这是正确的行为吗? 您是否更愿意为您创建的每个新工作创建新的计划?或重新使用时间表?

希望听到有趣的观点,

最善良,

1 个答案:

答案 0 :(得分:0)

我不确定这是完全基于意见的,但如果它被标记为这样我也不会感到惊讶。

在我对作业安排影响最大的商店中,我们选择为每项工作创建新的时间表。有时只有一个,有时几个。这样,如果我们在任何给定服务器上遇到高负载,我们可以调整单个作业计划以分散负载而不会影响多个作业。比方说,例如,具有相同开始时间的6个作业中的一个开始处理指数级更多的数据,一个作业可以轻松地移动X分钟,因此它不会竞争资源或引起竞争。