与服务器build立了连接,但在login前握手过程中发生错误

当我尝试从本地环境连接生产数据库时出现以下错误。

我之前可以连接生产数据库,但突然间我收到错误信息,有什么想法?

与服务器build立了连接,但在login前握手过程中发生错误。 (提供程序:TCP提供程序,错误:0 – 句柄无效。)

我试图在本地PC上运行asp.net网站,它有生产数据库的连接string,以下是我在本地环境中得到的错误的堆栈跟踪。

D:\ EDrive \ My Website \ MyWebsite \ MyWebsite \ MyWebsiteDAL \ clsForumQuestion.cs中的MyWebsiteDAL.clsForumQuestion.SelectAll(Int32 CurrentPageIndex,Int32 PageSize)中的第821行:CodeConnect.Default.Page_Load(Object sender,EventArgs e) \ EDrive \ My WebSites \ MyWebsite \ MyWebsite \ MyWebsite \ Default.aspx.cs:在System.Web.Util的System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp,Object o,Object t,EventArgs e)的第100行。在System.Web.UI.Control.OnLoad(EventArgs e)System.Web.UI.Control.LoadRecursive()在System.Web.UI.Page.ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,对象发件人,EventArgs e)CalliEventHandlerDelegateProxy.Callback布尔includeStagesAfterAsyncPoint)

任何想法可能在这里出了错?

1)清理你的VS.Net解决scheme

2)重build项目。

3)重置IIS

4)再次运行项目。

基本上解决了我的问题,但在我的情况下,我没有得到这个错误,突然间我的本地环境开始给我以上的错误,所以可能是这个骗局对我来说。

– 我救了我的工作,
– closuresVisual Studio,然后
– 重新开启我的项目

总是为我工作。

运行以下命令为我工作:

netsh Winsock reset 

https://serverfault.com/a/487139/250527

你可能想检查一些事情:

  1. 您生产服务器允许远程连接。 (可能有人把它关掉了,特别是如果你有DBA的话)

  2. 检查你的连接string。 有时候,如果您使用的是IP地址或服务器名称,则会导致此错误。 试试两个。

运行一些非常耗内存的进程时,我遇到了这个错误。 当系统开始缺乏记忆时,我开始注意到这种错误。 为了更好地使用RAM,我必须改变algorithm。

要注意的是,虽然有些线程抛出了这个exception,但另外一些抛出:

System.Data.SqlClient.SqlException(0x80131904):连接超时过期。 尝试使用login前握手确认时超时。 这可能是因为login前握手失败或服务器无法及时回应。 试图连接到这个服务器的时间是[Pre-Login] initialization = 43606; 握手= 560; —> System.ComponentModel.Win32Exception(0x80004005):等待操作超时

系统更改后,这两个问题都消失了,因此可以使用更less的RAM来运行。

我有同样的问题,我在数据库中存储会话数据,连接string中有Encrypt = True ,我假设告诉sql客户端以安全(SSL)模式连接到服务器,删除这有帮助!

正如里卡多的回答所述,

 netsh Winsock reset 

已经为我工作了,

PS如果你有互联网下载pipe理器或这样的程序会改变你的IP设置安装,然后运行这个命令后,当你重新启动你的计算机IDM将要求改变设置,在这种情况下设置NO,然后运行你的应用程序,它将正常工作。

希望它

对我来说,解决scheme是杀死僵尸IIS express工作进程。

例如find任务pipe理器和结束任务。

在这里输入图像描述

我有同样的问题,并没有build议的修复运气。 然后我遇到了这篇文章 ,看到了Mirrh关于一个名为Sendori阻止LSP的程序的评论。 不知道它是如何得到我的电脑,但在那里,并删除它解决了这个问题。

如果文章不起作用,请检查您的程序并卸载Sendori(如果您看到它)。

在我的情况是这样的:

Persist Security Info=True;

在我的连接string,需要被删除。 一旦我这样做,我不再有问题。

我重新启动SQL Server(Sharepoint)服务,它解决了这个问题。

我得到的代码基地或服务器没有chnges完全相同的问题。 事实certificate,数据库服务器运行在100%的CPU和SQL Server正在饿死任何CPU时间,从而导致超时。

我有一个类似的问题,我无法连接到数据库,并尝试在这里的build议。

在一天结束时,这对我来说是有效的:

使用SQL Serverconfigurationpipe理器工具在SQL Server客户端计算机上启用TCP / IP和/或命名pipe道协议。

  1. 单击开始,指向所有程序,然后单击SQL Serverconfigurationpipe理器。
  2. 单击以展开“SQL Servernetworkingconfiguration”,然后单击“客户端协议”。
  3. 用鼠标右键单击TCP / IP协议,然后单击启用。
  4. 用鼠标右键单击命名pipe道协议,然后单击启用。
  5. 如果提示,请重新启动SQL服务器服务。

我仍然不确定为什么或何时被禁用。

有同样的问题,其原因是BCrypt.Net库,使用.NET 2.0框架编译,而使用它的整个项目正在与.NET 4.0编译。 如果症状相同,请尝试下载BCrypt源代码,并在.NET 4.0中的发行版configuration中重build它。 完成之后,“login前握手”工作正常。 希望它能帮助任何人。

我遇到了这个错误,并且在这里做了你们所有的build议,但是没有一个对我的错误有任何影响。

我遇到了一个罪魁祸首:如果您的系统使用的是*.ini文件,那么您可能需要检查input的服务器名称,并确保它与web.config连接string中的名称相同。

同样的问题,这里列出的答案没有工作,也没有任何解决scheme,我可以find网上。 这个问题在Windows 10周年更新被应用到我的开发PC后不久就开始了,只影响到我的旧SQL Server 2005实例。 我无法通过Web应用程序甚至使用Sql Management Studio连接到实例。

对于它的价值,这是为我解决了这个问题:

  1. 打开SQL Serverconfigurationpipe理器 (取决于您正在运行的SQL Server版本):

    • C:\ WINDOWS \ Syswow64资料\ SQLServerManager.msc
    • C:\ Windows \ SysWOW64 \ SQLServerManager10.msc或
    • C:\ Windows \ SysWOW64 \ SQLServerManager12.msc或
    • 等等
  2. selectSQL Server服务

  3. find有问题的服务并查看属性

    • 例如SQL Server(SQL2005)在我的情况
  4. 在“login”选项卡上,将“内置帐户”更改为“networking服务”

这几乎是这个随机的解决scheme说: http : //www.kutayzorlu.com/operating-systems/linux-unix-redhat-debian-ubuntu-opensuse-centos/general-server-administrating/error-fixed-a-connection -was,成功地build立与-的服务器,但是,当时的错误而出现的,在最前login握手-12405.html

我没有理由selectnetworking服务。 我已经configuration为使用本地系统。 这个安全对我来说并不重要,因为在本地开发机器上只有问题,只能在本地访问。 我不能告诉为什么这个工作,但它做到了。

在我的情况下,当我想要访问远程数据库时,出现错误。 不过,我通过启动SQL Server Browser服务解决了这个问题。

在这里输入图像描述