当使用 Visual Studio 2012(或 2013)从本地开发盒连接 SQL Server 2008R2 SP1 时,我收到以下消息:
与服务器成功建立连接,但随后出现 登录过程中发生错误。 (提供商:SSL 提供商, 错误:0 - 收到的消息是意外的或格式错误。)
我本地的.Net Framework版本是4.5.50938
我的同事也有同样的问题。我还相信我之前就遇到过这个问题,在重新安装电脑之前,当我安装了 SSMS 2012 时,因为它也依赖于 .Net Framework 4,而不是 SSMS2008R2 那样的 .Net v2,它工作得很好。 Visual Studio 中的内部数据工具依赖于 .Net 4,这也是有道理的。
这个问题并不总是存在,我相信它是在我第一次安装 Visual Studio 2013 时引入的 - 然后在重新安装后再次引入,很可能是在更新 .Net 框架之后。
在我看来,当连接 SQL Server 2008R2 SP1 时,问题与此版本的 .Net 框架中的 System.Data 有关。
我该如何解决这个问题?是否有任何已知的修复、更新等?
不幸的是,当前无法更新 SQL Server 2008R2SP1。
我也寻找过解决方案,但到目前为止没有发现任何可用的东西。以下是一些具有类似问题的其他帖子的链接:
http://www.sqlservercentral.com/Forums/Topic1529609-2799-1.aspx
按照 Microsoft 的指示,您只剩下以下选项:
经过长时间的艰苦搜索,我找到了解决方案,无需重新安装 .NET Framework 4.5.1。您可以执行以下操作:
在命令行模式下执行以下命令,具有管理权限(没有管理员权限没有尝试过,也许可以)
netsh winsock reset
然后重新启动计算机。这就像魔术一样修复了它,您可以保留 .NET Framework 4.5.1
对我来说,解决方案是将其从连接字符串中删除
Encrypt=True;TrustServerCertificate=False;
没有它,它可以工作,但显然没有加密。
尝试添加
TrustServerCertificate=True;
到您的连接字符串。那德已经对我起作用了。 我使用 Asp.netCore 6
.Net 4.5.1 似乎没有解决此问题。卸载它破坏了我自己的 VS 2012 和我同事的 VS2013 - 但在 VS 之后,一切似乎都正常。我愿意打赌,如果我再次安装 SQL Server Management Studio 2012,这也将再次针对 SQL Server 2008SP1 安装起作用。
其他人在此线程
中报告了相同的修复作为解决方法,我刚刚卸载了 .NET Framework 4.5.1 并安装了 .NET Framework 4.5。然后一切正常!
供您参考,该错误已报告此处
我正在使用 mssql management studio 2019。我只需单击选项>>连接属性>加密连接(取消选中)即可工作
我安装了 VS 2013,当然不想回到以前的版本。
根据Frank Liao的回答,我所要做的就是安装.NET 4.5.2。 我不需要卸载任何东西。
只需从 Frank Liao 的帖子中获取 Web 安装程序并运行即可。
谢谢弗兰克!
我从命令行参数尝试了
netsh winsock reset
。截至目前,它正在运作。