Время ожидания ODBC для SQL Server истекло - PullRequest
3 голосов
/ 18 декабря 2008

У нас есть несколько приложений VB6, которые обращаются к двум различным серверам баз данных (оба 32-разрядных Windows 2003, один SQL Server 2000, один SQL Server 2005). Примерно каждые десять минут мы получаем несколько ошибок:

[Microsoft] [Драйвер ODBC SQL Server] Истекло время ожидания [Microsoft] [Драйвер ODBC SQL Server] [DBNETLIB] SQL Server не существует или доступ запрещен. [Microsoft] [Драйвер ODBC SQL Server] ConnectionRead ()

Это происходит на более чем дюжине разных компьютеров в случайное время. У нас также есть IP-телефоны, которые работают через одну и ту же сеть, и у них нет проблем. Мы также можем подключить VNC к компьютеру пользователя и воспроизвести полученную ошибку, но VNC все еще продолжает работать. Электронная почта также работает. Это только кажется, что ODBC-соединение с SQL Server вызывает эту проблему. Ошибки случаются для обоих наших серверов SQL. Мы изучили Google, но не смогли найти решение. Можем ли мы попытаться диагностировать проблему? Есть ли какое-нибудь исправление там?

Обновление:

У нас нет внутренних брандмауэров ни на серверах, ни на клиентах. Мы подключаемся через TCP / IP через DNS-имя сервера (также попробовал IP-адрес).

Один сервер имеет Windows 2003 SP2, а другой - нет.

Странно то, что годами он работал нормально, и теперь внезапно эти ошибки происходят. Ничего не изменилось на этих серверах в течение достаточно долгого времени. Это заставляет нас поверить, что это плохой переключатель, но это кажется маловероятным, поскольку ничто иное (электронная почта, телефоны, VNC, файловый сервер и т. Д.) Не работает без проблем.

Ответы [ 4 ]

2 голосов
/ 18 декабря 2008

Ознакомьтесь с этой статьей базы знаний Майкрософт.

Некоторые проблемы возникают после установки Windows Server 2003 SP2

Я бы также предложил вам переключиться на поставщика OLE DB. По моему опыту, он быстрее, чем ODBC, и более надежен.

Строки подключения

Прокрутите вниз до: Поставщик OLE DB для собственного клиента SQL

0 голосов
/ 23 июня 2010

Недавно я столкнулся с очень похожей проблемой и разместил ее здесь .

Скотт нашел решение.

0 голосов
/ 29 сентября 2009

Мы так и не поняли, почему это происходит. Мы обновили наш сервер до SQL Server 2008, и сообщения об ошибках прекратились.

0 голосов
/ 18 декабря 2008

Используете ли вы экземпляры не по умолчанию? Или у вас есть внутренние брандмауэры?

Мы изменили на «server.fqdn.tld \ instance, port», чтобы избежать этой точной (IIRC) прерывистой проблемы подключения клиентов за внутренними брандмауэрами.

Были затронуты только SQL-соединения.

...