1. 程式人生 > >sql server效能查詢,連線數

sql server效能查詢,連線數

1)使用以下查詢語句:

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


由上面的語句可以看出系統表獲取一些連線和活動資訊,主要介紹下面的兩個系統表: (1)sprocesses sysprocesses 表中儲存關於執行在 Microsoft? SQL Server? 上的程序的資訊。這些程序可以是客戶端程序或系統程序。sysprocesses 只儲存在 master 資料庫中。 (2)Sysperfinfo 包括一個 Microsoft? SQL Server? 表示法的內部效能計數器,可通過 Windows NT 效能監視器顯示.

2)

獲取SQL Server的當前連線數:使用如下SQL:

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


3)

還有一種方案是利用如下SQL: select connectnum=count(distinct net_address)-1 from master..sysprocesses   理由是net_address是訪問者機器的網絡卡值,這個總該是唯一的吧.但是看起來得到的是所有時間內的連線數.

4)通過系統過程來查詢:

SP_WHO 'loginName'

loginName 是當然登陸Sql的使用者名稱,一般程式裡面都會使用一個username來登陸SQL這樣通過這個使用者名稱就能檢視到此使用者名稱登陸之後佔用的連線了。
如果不寫loginName,那麼返回的就是所有的sql server資料庫連線。