sqlserver数据库连接数
‘壹’ 如何设置sql server的最大连接数
设置最大连接数
下面的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,那么返回的就是所有的连接。
既然连接数是可预测、可监测的,那么它就是可度量的,那么我们就可以根据实际情况来评估或测试程序的并发放量了。
‘贰’ 测试 sqlserver 最大用户数连接
理论值远远会小于实际值的
有可能受各种原因的影响
1、硬件配置、如内存大小,CPU数据量等
2、软件配置、如操作系统32位或64位和各个版本不本
3、SQL SERVER的一些设置,有些设置可以影响到这个
4、其它方面.....
‘叁’ sqlserver数据库最大连接数是多少
打开 SQL Server Management Studio Express 使用超级用户登录。
输入如下指令:
exec sp_configure 'show advanced options', 1
exec sp_configure 'user connections', 100
select value from master.dbo.sysconfigures where [config]=103
--第二次设置用户并发连接200
exec sp_configure 'show advanced options', 1
exec sp_configure 'user connections', 200
select value from master.dbo.sysconfigures where [config]=103
返回结果
100
200
也就是说 你设置成100 就100,设置成200就200, 最大是 32767, 设置成 0 就是32767.
0 表示不受限。但是 sql检索是返回0的。
---
以上只是理论:
实际上一般的小型服务器 能并行 60 就相当了不起了。
至强八核的CPU ,8G服务器内存 ,2003 系统 ,设置成 0 ,采用压力测试了一番 最高也就 104上下。跟操作系统和硬件配置有关系的。
‘肆’ sqlserver并发连接数
1)不启用连接池
当创建到101个连接的时候,就无法再创建新连接了。也就是说,如果连接字符串不做任何处理,我们的程序只能够跟SQLServer建立101个连接。
2)启用连接池
在连接字符串中加入代码:
Pooling=true;Max Pool Size=40000;Min Pool Size=0;
微软在MSDN上对最大连接数的定义是:“默认是0,代表不限制,但最大连接数是32767