MSSQL的sysprocesses

包含正在 SQL Server 实例上运行的进程的相关信息。 这些进程可以是客户端进程或系统进程。 若要访问 sysprocesses,您必须位于 master 数据库上下文中,

或者必须使用由三部分构成的名称 master.dbo.sysprocesses 或者sys.sysprocesses。

作用:Sys.SysProcesses 系统表是一个很重要的系统视图,主要用来定位与解决Sql Server的阻塞和死锁;

sysprocesses主数据库进程


列名


数据类型


说明


spid


smallint


SQL Server 会话 ID。


kpid


smallint


Windows 线程 ID。


blocked


smallint


正在阻塞请求的会话的 ID。 如果此列为 NULL,则表示请求未被阻塞,或锁定会话的会话信息不可用(或无法进行标识)。

-2 = 阻塞资源由孤立的分布式事务拥有。

-3 = 阻塞资源由延迟的恢复事务拥有。

-4 = 由于内部闩锁状态转换而无法确定阻塞闩锁所有者的会话 ID。


waittype


binary(2)


当前连接的等待资源编号,标示是否等待资源,0 或 Null表示不需要等待任何资源


waittime


bigint


当前等待时间(毫秒)。

0 = 进程不等待。


lastwaittype


nchar(32)


指示上次或当前等待类型名称的字符串。


waitresource


nchar(256)


锁资源的文本化表示法。


dbid


smallint


当前正由进程使用的数据库 ID。


uid


smallint


执行命令的用户 ID。 如果用户数和角色数超过 32,767,则发生溢出或返回 NULL。


cpu


int


进程的累计 CPU 时间。 无论 SET STATISTICS TIME 选项是 ON 还是 OFF,都为所有进程更新该项。


physical_io


bigint


进程的累计磁盘读取和写入。


memusage


int


当前为此进程分配的过程缓存中的页数。 一个负数,表示进程正在释放由另一个进程分配的内存。


login_time


datetime


客户端进程登录到服务器的时间。


last_batch


datetime


客户端进程上次执行远程存储过程调用或 EXECUTE 语句的时间。


ecid


smallint


用于唯一标识代表单个进程进行操作的子线程的执行上下文 ID。


open_tran


smallint


进程的打开事务数。


status


nchar(30)


进程 ID 状态。 可能的值有:

dormant = SQL Server 正在重置会话。

running = 会话正在运行一个或多个批。 多个活动的结果集 (MARS) 启用后,会话可以运行多个批。 有关详细信息,请参阅使用多个活动的结果集 (MARS)

background = 会话正在运行一个后台任务,例如死锁检测。

rollback = 会话具有正在处理的事务回滚。

pending = 会话正在等待工作线程变为可用。

runnable = 会话中的任务在等待获取时间量程时位于计划程序的可执行队列中。

spinloop = 会话中的任务正在等待调节锁变为可用。

suspended = 会话正在等待事件(如 I/O)完成。


sid


binary(86)


用户的全局唯一标识符 (GUID)。


hostname


nchar(128)


工作站的名称。


program_name


nchar(128)


应用程序的名称。


hostprocess


nchar(10)


工作站进程 ID 号。


cmd


nchar(16)


当前正在执行的命令。


nt_domain


nchar(128)


客户端的 Windows 域(如果使用 Windows 身份验证)或可信连接的 Windows 域。


nt_username


nchar(128)


进程的 Windows 用户名(如果使用 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_handle 运行当前 SQL 语句的起始偏移量。


stmt_end


int


所指定 sql_handle 的当前 SQL 语句的结束偏移量。

-1 = 当前语句为指定的 sql_handle 运行到 fn_get_sql function for 函数返回结果的结尾。


request_id


int


请求 ID。 用于标识在特定会话中运行的请求。

时间: 2024-10-11 07:37:55

MSSQL的sysprocesses的相关文章

数据批量插入MSSQL

MSSQL数据批量插入优化详细 序言 现在有一个需求是将10w条数据插入到MSSQL数据库中,表结构如下,你会怎么做,你感觉插入10W条数据插入到MSSQL如下的表中需要多久呢? 或者你的批量数据是如何插入的呢?我今天就此问题做个探讨. 压测mvc的http接口看下数据 首先说下这里只是做个参照,来理解插入数据库的性能状况,与开篇的需求无半毛钱关系. mvc接口代码如下: public bool Add(CustomerFeedbackEntity m) { using (var conn=Co

经典MSSQL语句大全和常用SQL语句命令的作用

下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL类型包括数据库.表的创建,修改,删除,声明—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML类型包括数据表中记录的查询,删除,修改,插入—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL类型包括数据库用户赋权,废除用户访问权限, 提交当前事务,中止当前事务—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1.说

SQL Injection 字典 - MSSQL

MSSQL Default Databases pubs Not available on MSSQL 2005 model Available in all versions msdb Available in all versions tempdb Available in all versions northwind Available in all versions information_schema Availalble from MSSQL 2000 and higher Comm

MSSQL手工注入辅助工具

mssql > 基本环境信息 语句及说明 #数据库版本 SELECT @@version #主机名,IP地址 SELECT HOST_NAME() #当前用户 SELECT user_name(); SELECT system_user; SELECT user; SELECT loginame FROM master..sysprocesses WHERE spid = @@SPID #列出所有用户 SELECT name FROM master..syslogins #列密码 mssql 2

linux编译安装mssql客户端和配置php连接mssql

凡是连接数据库,必须安装客户端,我一般写博客都不写原理,但是后来发现回头看自己写的自己都看不懂,所以这章博客会多一点原理性的东西. 数据库的连接一般都是在客户端上完成的,MySQL也不例外,安装mysql时一般都会这么安装: #yum install mysql mysql-server 上面的mysql就是安装的客户端,mysql-server就是服务端,不安装客户端(mysql)就没办法执行mysql连接命令:mysql -u user -p pass -h -P port 而sqlserv

数据库问题5-SYS.SYSPROCESSES使用和查找死锁

http://blog.sina.com.cn/s/blog_62c4727d0100jc5z.html (一)理論部份 sys.sysprocesses (Transact-SQL) http://technet.microsoft.com/zh-tw/library/ms179881.aspx 包含在 SQL Server 執行個體上執行之處理序的相關資訊.這些處理序可以是用戶端處理序或系統處理序.若要存取 sysprocesses,您必須在 master 資料庫內容中,或者,您必須使用 m

Mssql企业实战之数据库恢复

数据库完整还原的目的是还原整个数据库. 整个数据库在还原期间处于脱机状态.在数据库的任何部分变为联机之前,必须将所有数据恢复到同一点,即数据库的所有部分都处于同一时间点并且不存在未提交的事务. 在完整恢复模式下,数据库可以还原到特定时间点.时间点可以是最新的可用备份.特定的日期和时间或者标记的事务. 还原完整数据库步骤 通常,将数据库恢复到故障点分为以下几个步骤: 1. 备份活动事务日志(称为尾部日志).此操作将创建结尾日志备份.如果活动日志不可用,则该日志部分的所有事务将全部丢失. 注:在完整

Atitit.Gui控件and面板----数据库区-mssql 2008 权限 配置 报表查看成员

Atitit.Gui控件and面板----数据库区-mssql 2008 权限 配置 报表查看成员 1. 配置服务器连接权限 1 2. 配置数据库权限 1 3. 设置表格/视图安全性 2 1. 配置服务器连接权限 配置服务器登录--数据库级别的[安全性]-[登录名]-[新建登录名] 角色::public 作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:[email protected] 转载请注明来源: http://blog.csdn.net/attilax 2. 配置数据库权限

php扩展mssql.so连接sqlserver2008

1.安装配置freetds  wget http://mirrors.xmu.edu.cn/ubuntu/archive/pool/main/f/freetds/freetds_0.82.orig.tar.gz tar zxf freetds_0.82.orig.tar.gz cd freetds_0.82 ./configure --prefix=/usr/local/freetds --with-tdsver=8.0 -–enable-msdblib -–enable-dbmfix -–wi