Драйвер ODBC 17 для SQL Server: Клиент не может установить соединение, macOS, django, pyodbc

Все работало, пока я не перезагрузил свой ноутбук.

У меня такая установка:

  • python 3.8.8
  • django 3.1.1
  • pyodbc 4.0.30
  • pyodbc.drivers() показывает следующее: ['ODBC Driver 17 for SQL Server']
  • SQLServer
  • cat /etc/odbcinst.ini возвращает это:
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/usr/local/lib/libmsodbcsql.17.dylib
UsageCount=10
  • cat /etc/odbc.ini возвращает следующее:
# [DSN name]
 [MSSQL]
 Driver = ODBC Driver 17 for SQL Server
 Server = tcp:<my server>,1433
  • в настройках django:
DATABASES = {
    'default': {
        'ENGINE': 'mssql',
        'NAME': os.environ.get('DB_NAME'),
        'USER': os.environ.get('DB_USER'),
        'PASSWORD': os.environ.get('DB_PASSWORD'),
        'HOST': os.environ.get('DB_HOST'),
        'PORT': os.environ.get('DB_PORT'),
        'OPTIONS': {
            'driver': 'ODBC Driver 17 for SQL Server',
        },
    },
}

Я переустановил драйвер ODBC с помощью этой официальной инструкции Microsoft . Но это не помогло. Я по-прежнему не могу запустить сервер django и сталкиваюсь с этой ошибкой:

Довольно странно, что все работало в течение длительного времени, пока я не перезагрузил свой ноутбук (без обновления ОС, просто перезагрузка). Может быть, эта проблема связана с экспортом некоторых переменных с путями? Или, возможно, после установки драйвера ODBC на macOS мне нужно как-то настроить этот драйвер?

P.S.: jdbc драйвер работает без проблем с тем же именем сервера, портом, пользователем и паролем.

Вернуться на верх