Sql server Sql在空闲时间后重置池连接

Sql server Sql在空闲时间后重置池连接,sql-server,sql-server-2008,Sql Server,Sql Server 2008,我正在使用一台客户端pc,通过tcp/ip连接到本地数据库服务器。出于某种原因,在我的连接空闲一段时间后,Sql keep alive将检查我的tcp连接是否仍然处于活动状态。如果keep alive在检查我的连接时,由于tcp/ip流量过高或其他原因,它会在池内重置我的连接。因此,结果是,如果我的连接将被重置,客户端pc将尝试运行的第一个连接,它将获得异常“TCP提供程序,错误:0-无法建立连接,因为目标计算机主动拒绝它 “服务器关闭了连接”或类似的内容。这是因为客户端pc将尝试在sql池中不

我正在使用一台客户端pc,通过tcp/ip连接到本地数据库服务器。出于某种原因,在我的连接空闲一段时间后,Sql keep alive将检查我的tcp连接是否仍然处于活动状态。如果keep alive在检查我的连接时,由于tcp/ip流量过高或其他原因,它会在池内重置我的连接。因此,结果是,如果我的连接将被重置,客户端pc将尝试运行的第一个连接,它将获得异常“TCP提供程序,错误:0-无法建立连接,因为目标计算机主动拒绝它 “服务器关闭了连接”或类似的内容。这是因为客户端pc将尝试在sql池中不存在的会话中进行连接。我已将最小池大小设置为10。但我还是有同样的问题

在保持生存时间之后

这是我的连接字符串

Data Source = xxx.xxx.xxx.xxx;Min Pool Size=20; Initial Catalog = WiOrder; user id = xxxx; password = 1234;Connection Timeout=5;

SQL Server不终止连接。您看到的是客户端计算机上的.Net驱动程序正在执行的操作,这是完全正常和预期的行为

请参阅:

但我如何解决这个问题?或者如何检查客户端的当前连接是否仍然处于活动状态?如果没有,请创建一个新的,否则重新连接。Sql还在我的客户端应用程序中发送Rst包。