>  기사  >  데이터 베이스  >  SQL Server System Session ID是不是1-50?

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

WBOY
WBOY원래의
2016-06-07 17:21:241142검색

看到一篇文章问到为什么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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.