Подключение к MS SQL через ODBC Скачать в PDF

При работе в Loginom на операционной системе Linux в качестве основного способа взаимодействия с сервером СУБД MS SQL предполагается ODBC-драйвер, который должен быть установлен в системе. Для Подключения MS SQL по умолчанию параметр «Не использовать клиент СУБД» отключен, т.е. используется ODBC-клиент. В качестве клиента используется MSODBCSQL или FreeTDS, при этом MSODBCSQL является более приоритетным.

Предусмотрена возможность задать параметр Подключения MS SQL «Не использовать клиент СУБД» через переменную окружения LOGINOM_MSSQL_ODBC_ONLY. При значении данной переменной true или 1 подключение к MS SQL будет выполняться только через ODBC-драйвер, установленный в системе. Также есть возможность указать, какой именно ODBC-драйвер будет использоваться для подключения к SQL Server. За это отвечает переменная окружения LOGINOM_MSSQL_ODBC_DRIVER. Она может принимать следующие значения:

  • libmsodbcsql — использование драйвера MSODBCSQL.
  • libtdsodbc — использование драйвера FreeTDS.

Если переменная LOGINOM_MSSQL_ODBC_DRIVER не задана, то драйвер выбирается автоматически (в приоритете MSODBCSQL). Если переменная LOGINOM_MSSQL_ODBC_DRIVER задана, но значение не распознано, то в лог записывается предупреждение и драйвер выбирается автоматически, если это возможно.

Примечание: данные возможности доступны, если в системе/контейнере имеется установленный ODBC-клиент MSODBCSQL или FreeTDS. Информация об установке и настройке ODBC-драйверов на Linux приведена в статье Подключение ODBC.

Настройка переменных окружения для Loginom, установленного в качестве службы

Если Loginom Server установлен в качестве службы, то необходимо сделать следующее:

  1. Остановить службу Loginom Server:

     sudo systemctl stop loginomd
    
  2. Указать переменные в конфигурационном файле службы loginom-server.service (пример пути, по которому может располагаться файл: /usr/lib/systemd/system/ или /etc/systemd/system/):

     Environment="LOGINOM_MSSQL_ODBC_ONLY=1"
     Environment="LOGINOM_MSSQL_ODBC_DRIVER=libtdsodbc"
    
  3. Применить внесённые изменения, обновив конфигурацию менеджера systemd:

     sudo systemctl daemon-reload
    
  4. Запустить службу Loginom Server:

     sudo systemctl start loginomd
    

Настройка переменных окружения для Loginom, установленного в контейнере

Если Loginom установлен в систему контейнеризации, то необходимо выполнить следующее:

  1. Отредактировать файл-сценарий сборки Dockerfile, добавив через директиву ENV переменные:

     ENV LOGINOM_MSSQL_ODBC_ONLY=1
     ENV LOGINOM_MSSQL_ODBC_DRIVER=libtdsodbc
    
  2. Остановить работающие контейнеры командой:

     sudo docker compose -f /var/opt/loginom-docker/docker-compose.yml down
    
  3. Пересобрать образы контейнеров с помощью скрипта установки Loginom, выполнив его с флагом update из директории, где этот скрипт располагается:

     sudo ./setup.sh --update
    
  4. Запустить обновлённые контейнеры командой:

     sudo docker compose -f /var/opt/loginom-docker/docker-compose.yml up -d
    
Новости, материалы по аналитике, кейсы применения, активное сообщество