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數據庫連接。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM