• 共用计划调度


    起因:死锁检查作业(更应该说是阻塞检查作业)将作业A kill掉,实际阻塞情况并不严重。刚好作业A运行的时间点,死锁检查作业也会运行,于是想修改作业A的计划调度以避开与死锁检查作业同时运行。作业A的计划调度修改后,发现作业B的计划调度也跟着改变了(根据随笔获取指定时间区间作业运行情况查看得出)。
    查看作业A、B详细信息,发现两个作业的schedule_id相同。为什么会出现这种情况,可能是利用作业A生成的脚本创建作业B时,仅仅修改了作业名称、作业步骤,而作业调度还是使用作业A的,因此两个作业共用了一个计划调度。
    影响:修改任一作业的计划调度会影响另一作业的计划调度,对执行时间有特别要求的作业会有影响。
    解决方案:语句检查是否存在共用计划调度的作业

     1 --语句检查是否存在共用计划调度的作业
     2 select top 100 a.name,b.schedule_id,c.schedule_uid,c.name from msdb.dbo.sysjobs a
     3 inner join msdb.dbo.sysjobschedules b
     4 on a.job_id=b.job_id
     5 inner join msdb.dbo.sysschedules c
     6 on b.schedule_id=c.schedule_id
     7 inner join (
     8 select schedule_id from msdb.dbo.sysjobschedules 
     9 group by schedule_id
    10 having COUNT(*)>1) d
    11 on b.schedule_id=d.schedule_id
    12 order by schedule_id

    对于存在共用计划调度的作业,可删除调度再创建新调度。

  • 相关阅读:
    java 深入技术三(List)
    java 深入技术二(Collection)
    java开发JDBC连接数据库详解
    数据库基础和JDBC
    java 深入技术一
    java入门 第三季4
    java入门 第三季3
    04-1. 水仙花数(20)
    04-0. 求符合给定条件的整数集(15)
    03-4. 成绩转换(15)
  • 原文地址:https://www.cnblogs.com/Uest/p/4304400.html
Copyright © 2020-2023  润新知