Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Вземете състояние на работа на SQL Server

Не толкова трудно. Имайте предвид, че SQL Server съхранява информация за метаданни по всяко време за това какви подробности се извършват активно на сървъра. Бих направил това, за да намеря грешки в това, че можете да създадете процедура или функция, да я наречете по диапазон от дати. Дадох пример само за заявката за момента:

use msdb;

declare
    @Start int =  cast( convert(varchar,  
            dateadd(ww, datediff(ww, 0, getdate())-1,0)  -- last week starting
            , 112) as int)
,   @End int = cast( convert(varchar,
            getdate()  -- current datetime
            , 112) as int)
;

Select 
    j.name
,   j.description
,   cast( cast(jh.run_date as varchar) + ' ' +  left(jh.run_time, 2) + ':' + substring( cast(jh.run_time as varchar), 3, 2) as datetime) as TimeRan
,   jh.message
,   jh.step_id
,   jh.step_name
from sysjobs j (nolock) 
    join sysjobhistory jh (nolock) on j.job_id = jh.job_id
        and jh.run_date between @Start and @End
        and jh.run_status = 0  -- 0 is failure


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Внедряване на проект за база данни VS2010 - задачата SqlDeployTask се провали неочаквано, NullReferenceException

  2. Ефективно разрешаване на проблема с базата данни на SQL Server, заседнал в подозрителен режим

  3. Първи поглед към новия оценител на мощността на SQL Server

  4. Актуализиране на ред в таблица въз основа на подзаявка на същата таблица

  5. Диагностициране на застой в SQL Server 2005