如何查看sql server數據庫鏈接數

1.經過系統的「性能」來查看:
開始->管理工具->性能(或者是運行裏面輸入 mmc)而後經過
添加計數器添加 SQL 的經常使用統計(MSSQL General Statistics) 而後在下面列出的項目裏面選擇 用戶鏈接(User Connection) 就能夠時時查詢到sql server數據庫鏈接數了。
sql

2.經過系統表來查詢:
SELECT * FROM 
[Master].[dbo].[SYSPROCESSES] WHERE [DBID] 
IN 
(
  SELECT 
   [DBID]
  FROM 
   [Master].[dbo].[SYSDATABASES] 
  WHERE 
   NAME='databaseName'
)
databaseName 是須要查看的數據庫,而後查詢出來的行數,就是當前的sql server數據庫鏈接數。不過裏面還有一些別的狀態能夠作參考用。
數據庫

或者使用如下查詢語句: 函數

select * from sysprocesses where dbid in (select dbid from sysdatabases where name='MyDatabase') 工具

 

由上面的語句能夠看出系統表獲取一些鏈接和活動信息,主要介紹下面的兩個系統表: 性能

(1)sprocesses spa

sysprocesses 表中保存關於運行在 Microsoft? SQL Server? 上的進程的信息。這些進程能夠是客戶端進程或系統進程。sysprocesses 只存儲在 master 數據庫中。 orm

(2)Sysperfinfo server

包括一個 Microsoft? SQL Server? 表示法的內部性能計數器,可經過 Windows NT 性能監視器顯示. 進程

 

有人提議說爲了獲取SQL Server的當前鏈接數:使用以下SQL: it

SELECT COUNT(*) AS CONNECTIONS FROM master..sysprocesses


我的認爲不對
,看看.sysprocesseslogin_time列就可看出.

另一個方面是進程不能和鏈接相提並論,他們是一對一的關係嗎,也就是說一個進程就是一個鏈接?一個鏈接應該有多個進程的,因此鏈接和進程之間的關係應該是1:n.


由於sysprocesses列出的進程包含了系統進程和用戶進程,爲了獲得用戶鏈接,能夠使用以下SQL:

SELECT cntr_value AS User_Connections FROM master..sysperfinfo as p
WHERE p.object_name = 'SQLServer:General Statistics' And p.counter_name = 'User Connections'

我的仍是認爲不對,由於它是一個計數器,可能會累加的.

還有一種方案是利用以下SQL:

select connectnum=count(distinct net_address)-1 from master..sysprocesses

理由是net_address是訪問者機器的網卡值,這個總該是惟一的吧.可是看起來獲得的是全部時間內的鏈接數.

但願你們能夠給出本身的解決方案.這個問題解決了,相信會有很大的用途.

 

3.經過系統過程來查詢:
SP_WHO 'loginName'
loginName 是固然登錄Sql的用戶名,通常程序裏面都會使用一個username來登錄SQL這樣經過這個用戶名就能查看到此用戶名登錄以後佔用的鏈接了。
若是不寫loginName,那麼返回的就是全部的sql server數據庫鏈接。

 

4.經過SQL企業管理器查看:

在企業管理器裏----management---current   activity-----process   info

 

這裏有幾個與之相關的概念.

SQL Server提供了一些函數返回鏈接值(這裏可不是當前鏈接數喲!),我的以爲,很容易產生誤解.

系統變量

@@CONNECTIONS 返回自上次啓動 Microsoft? SQL Server?  以來鏈接或試圖鏈接的次數。

@@MAX_CONNECTIONS 返回 Microsoft? SQL Server?  上容許的同時用戶鏈接的最大數。返回的數沒必要爲當前配置的數值。

 

系統存儲過程

SP_WHO

提供關於當前 Microsoft? SQL Server?  用戶和進程的信息。能夠篩選返回的信息,以便只返回那些不是空閒的進程。

列出全部活動的用戶:SP_WHO ‘active’

列出某個特定用戶的信息:SP_WHO ‘sa’

相關文章
相關標籤/搜索