• 监控SQLServer作业执行情况脚本


    SELECT  [sJOB].[job_id] AS [作业ID] ,  
            [sJOB].[name] AS [作业名] ,  
            CASE WHEN [sJOBH].[run_date] IS NULL  
                      OR [sJOBH].[run_time] IS NULL THEN NULL  
                 ELSE CAST(CAST([sJOBH].[run_date] AS CHAR(8)) + ' '  
                      + STUFF(STUFF(RIGHT('000000'  
                                          + CAST([sJOBH].[run_time] AS VARCHAR(6)),  
                                          6), 3, 0, ':'), 6, 0, ':') AS DATETIME)  
            END AS [最近执行时间] ,  
            CASE [sJOBH].[run_status]  
              WHEN 0 THEN '失败'  
              WHEN 1 THEN '成功'  
              WHEN 2 THEN '重试'  
              WHEN 3 THEN '取消'  
              WHEN 4 THEN '正在运行' -- In Progress   
            END AS [最近执行状态] ,  
            STUFF(STUFF(RIGHT('000000'  
                              + CAST([sJOBH].[run_duration] AS VARCHAR(6)), 6), 3,  
                        0, ':'), 6, 0, ':') AS [LastRunDuration (HH:MM:SS)] ,  
            [sJOBH].[message] AS [最近运行状态信息] ,  
            CASE [sJOBSCH].[NextRunDate]  
              WHEN 0 THEN NULL  
              ELSE CAST(CAST([sJOBSCH].[NextRunDate] AS CHAR(8)) + ' '  
                   + STUFF(STUFF(RIGHT('000000'  
                                       + CAST([sJOBSCH].[NextRunTime] AS VARCHAR(6)),  
                                       6), 3, 0, ':'), 6, 0, ':') AS DATETIME)  
            END AS [下次运行时间]  
    FROM    [msdb].[dbo].[sysjobs] AS [sJOB]  
            LEFT JOIN ( SELECT  [job_id] ,  
                                MIN([next_run_date]) AS [NextRunDate] ,  
                                MIN([next_run_time]) AS [NextRunTime]  
                        FROM    [msdb].[dbo].[sysjobschedules]  
                        GROUP BY [job_id]  
                      ) AS [sJOBSCH] ON [sJOB].[job_id] = [sJOBSCH].[job_id]  
            LEFT JOIN ( SELECT  [job_id] ,  
                                [run_date] ,  
                                [run_time] ,  
                                [run_status] ,  
                                [run_duration] ,  
                                [message] ,  
                                ROW_NUMBER() OVER ( PARTITION BY [job_id] ORDER BY [run_date] DESC, [run_time] DESC ) AS RowNumber 
                        FROM    [msdb].[dbo].[sysjobhistory]                      
    WHERE   [step_id] = 0  
                      ) AS [sJOBH] ON [sJOB].[job_id] = [sJOBH].[job_id]  
                                      AND [sJOBH].[RowNumber] = 1  
    ORDER BY [作业名]  
    

      

  • 相关阅读:
    Mongodb在Linux下的安装和启动和配置
    mongodb常用数据操作
    通过word2013发布博客到博客网
    weex h5开发区别-实践初级篇
    移动端h5调试方法
    DOM事件机制进一步理解
    搞不懂的柯里化
    移动端特殊css样式
    h5页面唤起app(iOS和Android),没有安装则跳转下载页面
    git使用笔记
  • 原文地址:https://www.cnblogs.com/accumulater/p/7081488.html
Copyright © 2020-2023  润新知