mssql sqlserver 查看数据库活动连接数的方法分享


摘要:
下文讲述查看sqlserver 活动进程的方法,如下所示:
实验环境:sql server 2008 R2



一、查询分析器运行sp_who2

sp_who2 active  ---查看活动的进程数
----------------------------------------------
select count(distinct net_address)-1 as [连接数] from master..sysprocesses 
---不同的IP活动连接总数统计 
select count(*) as [用户连接数] from master..sysprocesses where db_name(dbid)='数据库名'
---获取指定数据库所有的用户连接数


二、系统的”性能”来查看

开始->管理工具->性能(或在”运行”中输入 mmc)然后
“添加计数器”添加 SQL 的常用统计 然后在下面列出的项目里面选择用户连接就可以时时查询到数据库的连接数了。
此方法,需要有访问那台计算机的权限,就是要通过windows账户登陆进去才可以添加此计数器。

三、通过查询系统表获取相关连接数信息

SELECT * FROM [Master].[dbo].[SYSPROCESSES] WHERE [DBID]
IN (SELECT [DBID] FROM [Master].[dbo].[SYSDATABASES] WHERE NAME=’数据库名称’)
—-查询指定数据库的连接数,每一行代表一个连接数

四、查询指定的用户名的连接数

当我们在一个实例供不同的APP应用,我们通过不同的用户名访问,下文讲述我们可以通过sp_who 区别出不同的用户名产生的不同连接数信息,如下所示:

sp_who '用户名'
--例:
sp_who 'sa'
--将返回sa这个账号所涉及的连接数