小编Rya*_*yan的帖子

提供程序:SSL 提供程序,错误:0 - 远程主机强制关闭现有连接

我编写了一个控制台应用程序,它只调用 SQL Server 数据库中的存储过程。然后,我设置了一个 Windows 任务计划程序事件,每 5 分钟调用一次控制台应用程序的 .exe 文件。大多数情况下它都能工作,但是每天大约有 10 次左右,一旦打开连接来调用存储过程,我们就会收到以下 sqlException:

System.Data.SqlClient.SqlException(0x80131904): 已成功与服务器建立连接,但登录过程中发生错误。(提供程序:SSL 提供程序,错误:0 - 远程主机强制关闭现有连接。)

我临时构建了一个 try 块,其中包含简单的 5 次重试和短暂的暂停,这对一些人有所帮助,但每天仍有几次 5 次都失败。我认为这一定是某种沟通问题,但我什至不知道该去哪里寻找。

我所做的大部分研究都指向 TLS 或防火墙问题。我不是这方面的专家,但我认为如果其中任何一个是原因,那么每次都会持续出现错误。与 SSL 的参考相同。另一方面,出于同样的原因,我不明白这可能是控制台应用程序或存储过程的编码问题,所以我没有想法。

SQL连接代码如下:


    Public Function GetDataTable(tsql As String, Optional ConnectionString As String = Nothing, Optional TryNum As Integer = 1) As DataTable
        Try
            Dim dt As DataTable
            Using conn As SqlConnection = New SqlConnection(If(Not ConnectionString Is Nothing, ConnectionString, SConn))
                conn.Open()
                Using dr As SqlDataReader = (New SqlCommand With {.CommandType = CommandType.Text, …
Run Code Online (Sandbox Code Playgroud)

sql-server ssl sqlexception windows-server-2012-r2 windows-server-2019

10
推荐指数
1
解决办法
3万
查看次数