Соединение с сервером было успешно установлено, но затем произошла ошибка во время предварительного подтверждения входа в систему


Я получаю следующую ошибку, когда я пытаюсь подключить производственную БД из локальной среды.

Я был в состоянии подключить производство БД раньше, но вдруг я получаю следующую ошибку, любая идея?

соединение было успешно установлено с сервером, но затем произошла ошибка во время предварительного подтверждения входа в систему. (поставщик: поставщик TCP, Ошибка: 0-дескриптор недопустим.)

Я пытался бежать asp.net сайт на местном языке ПК, у которого есть строка подключения производственной БД, ниже приведена трассировка стека для ошибки, которую я получаю в локальной среде.

в MyWebsiteDAL.clsForumQuestion.SelectAll(CurrentPageIndex типа int32, int32 и страницы) в D:EDriveMy сайтысетевомсетевомMyWebsiteDALclsForumQuestion.cs: линия 821 в CodeConnect.По умолчанию.В(объект отправителя, EventArgs В Е) в D:EDriveMy сайтысетевомсетевомсетевомпо умолчанию.aspx.cs: линия 100 на Система.Сеть.Утиль.Каллихелпер.EventArgFunctionCaller (IntPtr fp, Object o, Object t, EventArgs e) в системе.Сеть.Утиль.CalliEventHandlerDelegateProxy.Обратного вызова(объект отправителя, EventArgs в электронной) в системе.Сеть.ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.Управление.OnLoad(EventArgs e) в системе.Сеть.ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.Управление.LoadRecursive() в системе.Сеть.ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.Страница.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

любая идея, что могло пойти не так?

17 89

17 ответов:

решение

1) Очистите ваш VS.Net решение

2) Перестроить Проект.

3) Сброс IIS

4) запустите проект еще раз.

в основном это решило мою проблему, но в моем случае я не получал эту ошибку, и вдруг моя локальная среда начинает давать мне ошибку выше, поэтому может быть, что трюк работает для меня.

- Я сохранил свою работу,
- Закрыта Visual Studio, затем
- Заново открыл мой проект

всегда работает для меня.

Я испытал эту ошибку при запуске некоторых очень дорогих для памяти процессов. Когда система начала работать с нехваткой памяти, я начал замечать такого рода ошибки. Мне пришлось изменить алгоритм, чтобы лучше использовать оперативную память.

следует отметить, что в то время как некоторые потоки бросили это исключение, некоторые другие бросили:

System.ComponentModel.Win32Exception (0x80004005): время ожидания операции истекло

обе проблемы исчезли после того, как система была изменена, чтобы она могла работать с меньшим объемом оперативной памяти.

Запуск следующей команды работал для меня:

netsh Winsock reset

видно на https://serverfault.com/a/487139/250527

вы можете проверить несколько вещей:

  1. вы производственный сервер позволяет удаленные подключения. (возможно, что кто-то отключил это, особенно если у вас есть DBA)

  2. Проверьте строку подключения. Иногда, если вы используете IP-адрес или имя сервера, это вызовет эту ошибку. Попробуйте оба.

У меня была та же проблема, я хранил данные сеанса в базе данных, строка подключения была Encrypt=True в нем, который я предполагаю, сказал клиенту sql подключиться к серверу в безопасном режиме (SSL), удаление этого помогло!

как описано в ответе Рикарду,

netsh Winsock reset

работал на меня,

П. С. если у вас есть Internet download manager или такие программы , которые изменяют вам IP-настройки установлен, то после запуска этой команды при перезагрузке компьютера IDM попросит изменить настройки, установить нет в этом случае, а затем запустить приложение будет работать правильно.

надеюсь, что это

У меня была аналогичная проблема, когда я не мог подключиться к базе данных и попробовал рекомендации здесь.

В конце дня это то, что сработало для меня:

средство диспетчера конфигурации SQL Server используется для включения протоколов TCP/IP и/или именованных каналов на клиентском компьютере SQL Server.

  1. Нажмите кнопку Пуск, выберите пункт Все программы и выберите Диспетчер конфигурации SQL Server.
  2. разверните узел конфигурация сети SQL Server а затем щелкните клиентские протоколы.
  3. щелкните правой кнопкой мыши протокол TCP/IP и выберите Включить.
  4. щелкните правой кнопкой мыши протокол именованных каналов и выберите Включить.
  5. перезапустите службу SQL server, если будет предложено сделать это.

Я до сих пор не знаю, почему или когда это было отключено.

для меня решение состоит в том, чтобы убить зомби IIS express рабочих процессов.

например, найдите в Диспетчере задач и завершите задачу.

enter image description here

У меня была такая же проблема, и мне не повезло с предлагаемыми исправлениями. Я тогда наткнулся в этой статье и увидел комментарий от Mirrh относительно программы под названием Sendori, блокирующей LSP. Не знаю, как он попал на мой компьютер, но там он был и удаление его Исправлена проблема.

Если статья не работает, просто проверьте свои программы и удалите Sendori, если вы ее видите.

в моем случае это было:

Persist Security Info=True;

в моей строке подключения, которая должна быть удалена. Как только я это сделал, у меня больше не было проблем.

снова SQL Server (Sharepoint) сервис и это решило проблему.

Я получал точно такую же проблему без chnges для базы кода или серверов. Оказалось, что сервер БД работал на 100% CPU, а SQL Server голодал от любого времени процессора, что вызвало тайм-аут.

была та же проблема, причина этого была BCrypt.Net библиотека, скомпилированная с использованием .NET 2.0 framework, в то время как весь проект, который ее использовал, компилировался с .NET 4.0. Если симптомы одинаковы, попробуйте загрузить осуществляется исходный код и восстановить его в релиз конфигурации внутри .Net версии 4.0. После того, как я сделал это, "предварительное рукопожатие" сработало нормально. Надеюсь, это кому-нибудь поможет.

Я испытал эту ошибку и сделал все предложения от вас, ребята здесь, но ни один не имел никакого эффекта для моей ошибки.

Я поймал виновника: если вы используете *.ini файл для вашей системы, вы можете проверить, какое имя сервера было введено там и убедитесь, что это то же самое, что и в вашем интернете.строка подключения конфигурации.

та же проблема здесь, и никакие ответы, перечисленные здесь, не работали, и никаких решений я не мог найти в интернете. Проблема началась вскоре после того, как обновление Windows 10 anniversary было применено на моем компьютере dev и затронуло только мой старый экземпляр SQL Server 2005. Я не смог подключиться к экземпляру через мои веб-приложения или даже с помощью SQL Management Studio.

для чего это стоит, это то, что решило это для меня:

  1. открыть конфигурацию SQL Server Менеджер (в зависимости от того, какую версию SQL Server вы используете):

    • C:\Windows\SysWOW64\SQLServerManager.msc
    • C:\Windows\SysWOW64\SQLServerManager10.msc или
    • C:\Windows\SysWOW64\SQLServerManager12.msc или
    • etc
  2. выберите службы SQL Server

  3. найдите проблемную службу и просмотрите Свойства

    • например SQL Server (SQL2005) в моем случае
  4. на вкладке вход измените "встроенная учетная запись"на" сетевая служба"

что почти, что это случайное решение, сказал: http://www.kutayzorlu.com/operating-systems/linux-unix-redhat-debian-ubuntu-opensuse-centos/general-server-administrating/error-fixed-a-connection-was-successfully-established-with-the-server-but-then-an-error-occurred-during-the-pre-login-handshake-12405.html

Я выбрал сетевую службу без всякой причины. Мой уже был настроен на использование локальной системы. Эта безопасность не имеет значения для меня, поскольку это было только проблематично на моей локальной машине разработки, только доступ осуществляется локально. Я не могу посоветовать, почему это работает, но это так.

в моем случае, я получаю ошибку, когда я хочу получить доступ к удаленной базе данных. Однако я решил это, запустив службу браузера SQL Server.

enter image description here