SQL设置SQL Server最大连接数及查询语句的解决办法

2022-11-12 09:34:09
内容摘要
这篇文章主要为大家详细介绍了SQL设置SQL Server最大连接数及查询语句的简单示例,具有一定的参考价值,可以用来参考一下。 对此感兴趣的朋友,看看idc笔记做的技术笔记! 一、设
文章正文

这篇文章主要为大家详细介绍了SQL设置SQL Server最大连接数及查询语句的简单示例,具有一定的参考价值,可以用来参考一下。

对此感兴趣的朋友,看看idc笔记做的技术笔记!

一、设置最大连接数

下面的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,那么返回的就是所有的连接。

既然连接数是可预测、可监测的,那么它就是可度量的,那么我们就可以根据实际情况来评估或测试程序的并发放量了。

总结

好了,以上就是这篇文章的全部内容了,有了这些,相信以上的困惑应该可以解开了吧。 希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

注:关于SQL设置SQL Server最大连接数及查询语句的简单示例的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!