一、設置最大連接數
下面的T-SQL 語句可以配置SQL Server 允許的並發用戶連接的最大數目。
exec sp_configure 'show advanced options', 1 exec sp_configure 'user connections', 100
第一句用以表示顯示sp_configure
系統存儲過程高級選項,使用user connections
時,要求show advanced options
值為1。
第二句配置最大連接數為100,0 表示不限制,但不表示無限,後面將談談。
也可以在企業管理器中配置,在企業管理器中,可以在實例上點右鍵->“屬性”->“連接”裡面更改。
需要重新啟動SQL Server,該值才會生效。
@@max_connections
select @@max_connections
它總是返回32767,它並不是指上面設置的user connections
,實際上它表示user connections
最大可設置為多少。由於它的最大值是32767,那麼user connections
為0 時,最大連接數也就是32767 了,並不是無限。
默認情況下user connections
值是0,也就是說默認情況下SQL Server 的最大連接數是32767。
二、獲得當前設置的最大連接數:
select value from master.dbo.sysconfigures where [config]=103
三、如何監測SQLServer的連接數
/*查詢連接數*/ select loginame,count(1) as Nums from sys.sysprocesses group by loginame order by 2 desc select spid,ecid,status,loginame,hostname,cmd,request_id from sys.sysprocesses where loginame='' and hostname=''
方法二:
SP_WHO 'loginName'
loginName
是當然登陸Sql的用戶名,一般程序裡面都會使用一個username
來登陸SQL這樣通過這個用戶名就能查看到此用戶名登陸之後占用的連接了。
如果不寫loginName
,那麼返回的就是所有的連接。
既然連接數是可預測、可監測的,那麼它就是可度量的,那麼我們就可以根據實際情況來評估或測試程序的並發放量了。
總結
好了,以上就是這篇文章的全部內容了,有了這些,相信以上的困惑應該可以解開了吧。 希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。