您的位置:首页 > 其它

sp_who

2015-11-26 16:05 316 查看
sp_who(Transact-SQL)

Provides information about current users,sessions, and processes in an instance of the Microsoft SQL Server Database Engine.

The information can be filtered to return only those processes that are not idle, that belong to a specific user, or that belong to a specific session.

Column
Data type
Description
spid
smallint
Session ID.
ecid
smallint
Execution context ID of a given thread associated with a specific session ID.

ECID = {0, 1, 2, 3, ...n}, where 0 always represents the main or parent thread, and {1, 2, 3, ...n} represent the subthreads.
status
nchar(30)
Process status. The possible values are:

dormant. SQL Server is resetting the session.

running. The session is running one or more batches. When Multiple Active Result Sets (MARS) is enabled, a session can run multiple batches. For more information, see Using
Multiple Active Result Sets (MARS).

background. The session is running a background task, such as deadlock detection.

rollback. The session has a transaction rollback in process.

pending. The session is waiting for a worker thread to become available.

runnable. The session's task is in the runnable queue of a scheduler while waiting to get a time quantum.

spinloop. The session's task is waiting for a spinlock to become free.

suspended. The session is waiting for an event, such as I/O, to complete.
loginame
nchar(128)
Login name associated with the particular process.
hostname
nchar(128)
Host or computer name for each process.
blk
char(5)
Session ID for the blocking process, if one exists. Otherwise, this column is zero.

When a transaction associated with a specified session ID is blocked by an orphaned distributed transaction, this column will return a '-2' for the blocking orphaned transaction.
dbname
nchar(128)
Database used by the process.
cmd
nchar(16)
Database Engine command (Transact-SQL statement, internal Database Engine process, and so on) executing for the process.
request_id
int
ID for requests running in a specific session.
In case of parallel processing, subthreads are created for the specific session ID. The main thread is indicated as spid = <xxx>and ecid
=0. The
a997
other subthreads have the same spid = <xxx>, but with ecid > 0.

How To understand

sp_helptext sp_who; execute this SQL statement, then detail description you can find.

How To Use
1. EXEC sp_who

2. EXEC sp_who 'xxx'
---xxx means login name

3 EXEC sp_who 'ative'   

SELECT * FROM sys.sysprocesses	-- SQL proceess detail

SELECT * FROM sys.syslockinfo	-- SQL locked object

dbcc inputbuffer(Session_ID)	-- SQL statement from client

dbcc inputbuffer(Blocked)	-- SQL blocked statement in process
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: