使用sp_who获得特定处理或过程的信息

ZDNet软件频道 时间:2003-08-25 作者:ZDNet China |  我要评论()
本文关键词:sqltips
当你要查找减缓用户操作原因的信息时,sp_who是一款最为方便的工具。她是一种系统存储的程序,可以提供用户和过程的当前信息。
本文译自Builder.com,未经许可请勿转载一个用户数据处理或过程有时候会对SQL Server2000有着负面影响。例如,当用户建立一个高级的数据操作时,它可以产生数据操作的劲瓶,只有等到这一操作完成之后,其他用户的操作才可以进行。也许你没有听到开发人员的抱怨,但你应该听到过等候的用户的抱怨。这就是无法获得特定处理和过程的信息的原因。

当你要查找减缓用户操作原因的信息时,sp_who是一款最为方便的工具。她是一种系统存储的程序,可以提供用户和过程的当前信息。除此之外,可以使用它来获得正在处理过程的信息,包括空闲的过程。

sp_who的操作结果提供一些很有用的纵栏,包括:spid(系统过程ID),ecid(与spid相关的给定线程的环境ID),过程状态,loginame, hostname, blk(模块过程的系统ID),数据库名称,以及SQL Server执行过程的命令。

以下的范例是使用sp_who来列举当前正在运行的过程:

USE master
EXEC sp_who

操作结果如下图所示。

如果你想查找一个特定用户过程,可以使用他或她的注册,如下所示:

USE master
EXEC sp_who 'jharvey'

其他选择,包括获得当前运行过程或者特定过程的所有信息,可以仿制如下范例操作:

USE master
EXEC sp_who 'active'

USE master
EXEC sp_who '10'  -- 10 is the specific process id



责任编辑:炒饭

欢迎评论投稿


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134