C# 默认的MaxPoolSize是多少?
我得到了可怕的错误: 在sql中,通过运行以下命令,我只打开了116个连接:C# 默认的MaxPoolSize是多少?,c#,sql-server,C#,Sql Server,我得到了可怕的错误: 在sql中,通过运行以下命令,我只打开了116个连接: SELECT DB_NAME(dbid) as DBName, COUNT(dbid) as NumberOfConnections, loginame as LoginName FROM sys.sysprocesses WHERE dbid > 0 GROUP BY dbid, loginame ; 116似乎很低,我目前没有设置MaxPoolSize
SELECT
DB_NAME(dbid) as DBName,
COUNT(dbid) as NumberOfConnections,
loginame as LoginName
FROM
sys.sysprocesses
WHERE
dbid > 0
GROUP BY
dbid, loginame
;
116似乎很低,我目前没有设置MaxPoolSize。默认的MaxPoolSize是多少
我还确保所有连接在完成时都已关闭。默认情况下,SQL Server最多允许32767个连接。可以使用sp_configure对其进行更改。要查看此设置的当前配置,请使用以下查询:
select * from sys.configurations
where name ='user connections'
您可以尝试在连接字符串中添加以下句子
Max Pool Size=200
,看看这是否有帮助
另一个可能导致问题的原因是连接泄漏。可能在某些情况下或在某些情况下,您没有关闭连接,这是导致问题的原因
这里有一个我正在使用的连接字符串的示例
应用程序名称=xxxx;数据源=10.10.10.10;初始目录=MyDB;用户ID=sa;密码=密码;持久安全信息=True;MultipleActiveResultSets=True;最大池大小=200;连接寿命=600;异步处理=真;“
希望这有帮助:指定的最大池大小(默认值为100)
这是一个超时错误。它只表明这可能是由于达到了最大池大小造成的,但可能是由于许多其他原因造成的。from:maximum pool size specified(默认值为100)。这是一个超时错误。这只是表明它可能是由于达到了最大池大小而导致的,但它可能是由于许多其他原因造成的。@Gabriellainha回答了吗?好了。现在请尝试向我们展示您试图对该服务器运行的内容,以便我们了解发生了什么,Sql server允许32767,但从@GabrielRainha的评论来看,连接字符串的默认值是100。我认为这并不能回答MaxPoolSize是什么。虽然这不能回答问题,但sql server评论很重要,因为如果您在web层中运行50个框(例如)您需要确保不会将每个框设置为超过sql server中组合在一起时可用总数的数字。
select * from sys.configurations
where name ='user connections'