MS SQL определение Job-ы от которой запущена транзакция

Если в выводе процедуры sp_WhoIsActive (http://whoisactive.com/) искомая транзакция (например, транзакция которая долго выполняется или вешает другие транзакции) в поле program_name содержит запись вида:

SQLAgent - TSQL JobStep (Job 0x3E7DB8B391F4CB4AA406DDF1A3644E5B : Step 1)

Значит эта транзакция запущена Job-ой. Чтобы определить что это за Job-а, необходимо подключиться студией SSMS к инстансу сервера с которого запущена Job-а — в выводе sp_WhoIsActive сервер указан в поле host_name, затем выполнить на нем запрос:

SELECT * FROM msdb.dbo.sysjobs WHERE CONVERT(binary(16), job_id)=0xC50B629D34BB244589E226D81312BECF

Подставив после знака «=» значение из записи в поле program_name.

В результате выполнения запроса в поле name будет содержаться название искомой Job-ы из SQL Server Agent. Номер шага указан в выводе процедуры sp_WhoIsActive после ID Job-ы (Step).

0

Добавить комментарий

Ваш e-mail не будет опубликован.