Поделиться через


sys.sysprocesses (Transact-SQL)

Область применения: SQL Server

Содержит сведения о процессах, выполняемых на экземпляре SQL Server. Эти процессы могут быть клиентскими или системными. Для доступа к sysprocesses либо необходимо быть в контексте главной базы данных, либо следует использовать трехчастное имя master.dbo.sysprocesses.

Внимание

Эта системная таблица SQL Server 2000 включена в СУБД как представление для обеспечения обратной совместимости. Вместо нее рекомендуется использовать системные представления SQL Server. Чтобы найти эквивалентное системное представление или представления, см. статью "Сопоставление системных таблиц с системными представлениями" (Transact-SQL). В будущей версии Microsoft SQL Server этот компонент будет удален. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется.

Имя столбца Тип данных Description
spid smallint Идентификатор сеанса SQL Server.
kpid smallint Идентификатор потока Windows.
заблокировано smallint Идентификатор сеанса, блокирующего данный запрос. Если этот столбец содержит значение NULL, то запрос не блокирован или сведения о сеансе блокировки недоступны (или не могут быть идентифицированы).

-2 = Блокирующий ресурс принадлежит потерянной распределенной транзакции.

-3 = Блокирующий ресурс принадлежит отложенной транзакции восстановления.

-4 = Идентификатор сеанса владельца кратковременной блокировки не может быть определен из-за внутренних переходов состояния кратковременной блокировки.
waittype binary(2) Зарезервировано.
waittime bigint Текущее время ожидания в миллисекундах.

0 = процесс не является ожидающим.
lastwaittype nchar(32) Строка, обозначающая имя последнего или текущего типа ожидания.
waitresource nchar(256) Текстовое представление ресурса блокировки.
dbid smallint Идентификатор базы данных, используемый процессом в данный момент.
uid smallint Идентификатор пользователя, выполнявшего команду. Вызывает переполнение или возвращает значение NULL, если количество пользователей и ролей превышает 32 767.
ЦП int Совокупное время ЦП для процесса. Запись обновляется для всех процессов независимо от значения параметра SET STATISTICS TIME (ON или OFF).
physical_io bigint Совокупное количество операций чтения и записи для процесса.
memusage int Число страниц в кэше процедур, выделенных в данный момент для этого процесса. Отрицательное значение показывает, что процесс освобождает память, выделенную другим процессом.
login_time datetime Время регистрации клиентского процесса на сервере.
last_batch datetime Время последнего вызова удаленной хранимой процедуры или инструкции EXECUTE клиентским процессом.
ecid smallint Идентификатор контекста выполнения используется с целью идентифицировать подпроцессы, действующие от имени одного процесса, уникальным образом.
open_tran smallint Количество транзакций, открытых для данного процесса.
статус nchar(30) Состояние идентификатора процесса. Возможны следующие значения:

dormant = SQL Server сбрасывает сеанс.

running = сеанс выполняет один или несколько пакетов. Если включен режим MARS, в сеансе может выполняться несколько пакетов. Дополнительные сведения см. в разделе Использование множественных активных результирующих наборов (MARS).

background = сеанс выполняет фоновую задачу, например обнаружение взаимоблокировки.

откат = сеанс имеет откат транзакции в процессе.

ожидание = сеанс ожидает того, что рабочий поток станет доступным.

Runnable = Задача в сеансе находится в очереди запуска планировщика во время ожидания получения квантов времени.

spinloop = Задача в сеансе ожидает, чтобы спин-блокировка стала бесплатной.

приостановлено = сеанс ожидает завершения события, например ввода-вывода.
sid binary(86) Идентификатор GUID для этого пользователя.
hostname nchar(128) Имя рабочей станции.
program_name nchar(128) Имя приложения.
hostprocess nchar(10) Идентификационный номер процесса рабочей станции.
cmd nchar(52) Команда, выполняемая в данный момент.
nt_domain nchar(128) Домен Windows для клиента, если применяется проверка подлинности Windows или доверительное соединение.
nt_username nchar(128) Имя пользователя Windows для процесса, если применяется проверка подлинности Windows или доверительное соединение.
net_address nchar(12) Связанный уникальный идентификатор для сетевого адаптера рабочей станции каждого пользователя. При входе пользователя в систему этот идентификатор вставляется в столбец net_address.
net_library nchar(12) Столбец, в котором хранится библиотека клиентской сети. Каждый клиентский процесс подключается к сетевому подключению. С сетевыми подключениями связана сетевая библиотека, позволяющая им устанавливать соединение.
loginame nchar(128) Имя входа.
context_info binary(128) Данные, которые хранятся в пакете с помощью инструкции SET CONTEXT_INFO.
sql_handle binary(20) Представляет пакет или объект, который выполняется в настоящий момент.

Обратите внимание , что это значение является производным от адреса пакета или памяти объекта. Это значение не вычисляется с помощью хэш-алгоритма SQL Server.
stmt_start int Начальное смещение текущей инструкции SQL для заданной sql_handle.
stmt_end int Конечное смещение текущей инструкции SQL для заданной sql_handle.

-1 = текущая инструкция переходит к концу результатов, возвращаемому функцией fn_get_sql для заданной sql_handle.
request_id int Идентификатор запроса. Применяется для идентификаций запросов, выполняемых в текущем сеансе.
page_resource binary(8) Область применения: SQL Server 2019 (15.x)

8-байтовое шестнадцатеричное представление ресурса страницы, если столбец waitresource содержит страницу.

Замечания

Если у пользователя есть разрешение VIEW SERVER STATE на сервере, пользователь увидит все выполняемые сеансы в экземпляре SQL Server; в противном случае пользователь увидит только текущий сеанс.

См. также

Связанные с выполнением динамические административные представления и функции (Transact-SQL)
Сопоставление системных таблиц с системными представлениями (Transact-SQL)
Представления совместимости (Transact-SQL)