Как отладить проблемы с драйверами MSSQL из Ubuntu

Подобно другой паре вопросов, которые я видел, у меня нет выбора, кроме как подключиться к MSSQL из Django.

Я периодически (но примерно в 50% случаев, остальное работает нормально) получаю ошибку;

django.db.utils.Error: ('[08S01] [Microsoft] [Драйвер ODBC 13 для SQL Server] Поставщик TCP: код ошибки 0x274c (10060) (SQLGetData)')

Обратите внимание, я тоже иногда получаю это;

django.db.utils.Error: ('08S01', '[08S01] [Microsoft] [Драйвер ODBC 13 для SQL Server] Поставщик TCP: код ошибки 0x68 (104) (SQLGetData)')

Я думаю, что это связано с сетью, я ранее пытался поменяться pyodbc версии, обмен между FreeTDS и Microsoft драйвер для Unix, и пытается pyodbc а также pyodbc-azure,

Речь идет о машинах Vagrant в частной сети с фиксированными IP-адресами (Ubuntu 16.04 и Windows 8), SQL Server - это SQL Server Express 2016.

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

1 ответ

Вот несколько полезных ссылок на основе зарегистрированных кодов ошибок:

10060

Произошла ошибка при установлении соединения с сервером. При подключении к SQL Server эта ошибка может быть вызвана тем, что в настройках по умолчанию SQL Server не разрешает удаленные подключения. (поставщик: поставщик TCP, ошибка: 0 - попытка подключения не удалась, потому что подключенная сторона не ответила должным образом через некоторое время, или не удалось установить соединение, поскольку подключенный хост не смог ответить.) (Microsoft SQL Server, ошибка: 10060)

Как правило, это можно исправить, перейдя к экземпляру SQL Server и убедившись, что удаленные подключения разрешены. Для этого в SSMS есть настройка. Вы также хотите убедиться, что сервер настроен на использование интегрированного режима безопасности. т.е. - учетные данные windows/ad и учетные данные сервера sql. Вы можете определить пользователя сервера SQL, не привязанного к идентификатору пользователя Windows.

Другие вопросы по тегам