首页 > 解决方案 > SQL Server - 停止和禁用代理作业之间的区别

问题描述

有人可以解释 - 在 MS 的文档中没有找到 -EXEC dbo.sp_stop_job和的行为有什么区别EXEC dbo.sp_update_job @enabled = 0?我正在准备 AWS RDS 重启,需要关闭指向/来自我的 RDS 实例的任何作业/ssis/dms。

目标是阻止 RDS 周围发生的任何活动,而不会发生暴力/强制连接中断。

标签: sql-serveramazon-web-servicestsqlamazon-rds

解决方案


如果停止作业,则停止当前正在运行的代理作业。如果您禁用某个作业,则意味着该作业将不会在下一个预定时间开始。

举个例子,一个工作每小时开始,整点开始,需要 10 分钟才能完成。13:05 你停止工作;当前运行的进程被终止(可能触发任何打开事务的回滚)。然后该作业将在 14:00 再次运行。

对于同一个作业,您在 16:01 禁用它。我相信,(尽管没有记录我可以看到)该作业将继续运行到完成,但是,在 17:00 它不会开始,并且在任何以后的日期也不会开始,直到它被启用(再次)。


推荐阅读