Home  >  Article  >  Database  >  SQL Server System Session ID是不是1-50?

SQL Server System Session ID是不是1-50?

WBOY
WBOYOriginal
2016-06-07 17:21:241111browse

看到一篇文章问到为什么SQL Server系统的SESSION ID是从1到50的,以前看过文章,这些Session是SQL Server为了运行系统活动比如(

今天在论坛看到一篇文章问到为什么SQL Server系统的SESSION ID是从1到50的,以前看过文章,这些Session是SQL Server为了运行系统活动比如((lazy writer, ghost record cleanup, DTC commit/abort),所以会保留50 Session ID给SQL Server使用,用户会话从51开始。 

在2005之前查询用户会话使用: 

 

spid 50 

但是在SQL Server 2005之后已经没有这个限制了,我在MSDN上找到了下面这篇文章:How It Works: System Sessions 

Looking at a SQL Server error log it is formatted with the date, time and session identifier.  Many of the identifiers contain the s following the spid value.

2008-01-08 20:03:36.12 spid5s

The s indicates that the session is a system session.  Prior to SQL Server 2005 all system sessions were limited to session ids less than 50.  SQL Server 2005 lifted that restriction.  In order identify a session performing system actives (lazy writer, ghost record cleanup, DTC commit/abort, ...) the sessions are identified as system sessions.

Instead of the older "select * from sysprocesses where spid

根据上面的讲法系统Session ID有可能超过50,,所以查询用户Session ID使用 

is_user_process=

is_user_process

bit

如果会话是系统会话,则为 0。否则,为 1。不可为空值

更多信息参考:(v=sql.90).aspx

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn