У меня возникла проблема с сетью на одном клиентском компьютере, которая, похоже, не имеет фиксированного времени для возникновения, которую я, по-видимому, ввел, добавив сеть 10g к серверу базы данных.
В настоящее время клиенты на других машинах выполняют такую же работу в одно и то же время с той же версией приложения без проблем.
У меня есть приложение, которое запрашивает данные из MSSQL, обрабатывает их локально и сохраняет результат обратно в MSSQL, затем проверяет наличие дополнительных данных и повторяет их, пока не останется ни одного.
Ошибка MSSQL может возникнуть после любой точки пути, при запуске запроса, в промежутке между его вставкой и выбором других или после последней вставки.
Ошибки:
"Access is denied"
или
"The user name or password is incorrect"
(в зависимости от providerName)
... и, что гораздо реже, для обычного подключения TcpClient к той же машине и другой службе (той, которая назначает данные для извлечения из MSSQL):
"A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond"
Затем, после ошибки, он повторит попытку один или два раза и снова начнет работать. Но этот тайм-аут приводит к нежелательной задержке.
Эта проблема возникает только на одном клиентском компьютере (windows server 2019) и, по-видимому, может быть переключена путем отключения сетевых интерфейсов 10g и использования 1g вместо этого на сервере db (server 2016 w / sql server 2017).
Это происходило на другом компьютере, но похоже, что перезагрузка сервера db после изменения IP-адреса между интерфейсами 1g и 10g решила проблему там. Я предполагаю, что это была какая-то проблема со стеком TCP / IP или прослушивающим интерфейсом с MSSQL.
Теперь с тем же приложением на других машинах нет проблем.
Я пробовал много итераций конфигураций интерфейса, но не нашел ни одной, которая работает, а также 1G => 1G между проблемным клиентским компьютером и сервером db.
Машина в домене
Нет, ни одна машина не находится в домене.
подключение к серверу sql является интегрированной безопасностью, токен аутентификации пользователя истекает и может быть обновлен только при перемещении сетей.
Нет. Использование имени пользователя / пароля в строке подключения.