Подключение к MS SQL Server из QGIS запущенного в Linux

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Эта страница является черновиком статьи.


Инструкция по настройки unixODBC и QGIS, для подключения к MS SQL Server

Введение

QGIS имеет возможность подключаться к MS SQL Server и работать с его "родными" типами Geometry и Geography. Подключение под ОС MS Windows обычно не вызывает ни каких проблем, следует лишь ввести название сервера и имя БД. В ОС Linux эта операция несколько сложнее, и может вызвать проблемы у многих пользователей.
Провайдер MS SQL Server для QGIS при подключения использует модуль QtSql и один из его драйверов - QODBC. Драйвер QODBC на Linux реализован поверх unixODBC. Он в свою очередь, для работы с MS SQL Server использует библиотеку FreeTDS и odbc драйвер, написанный на её базе.

Настройка MS SQL Server

Для начала необходимо убедиться, что SQL Server принимает сетевые подключения. Для этого, в SQL Server Configuration Manager необходимо включить протокол соединения TCP/IP.

Msserver qgis linux1.png


В списке "SQL Server Network Configuration" выберите необходимый инстанс (в моем случае это "MSSQLSERVER"). В таблице с доступными протоколами TCP/IP должен иметь статус Enabled. Если это не так, необходимо включить его, открыв двойным щелчком форму свойств и установив свойство Enabled равным "Yes".

Msserver qgis linux2.png


На этой же форме, на вкладке "IP Addresses" можно проверить, стандартный ли порт (1433) выставлен для этого инстанса.

Msserver qgis linux3.png


Если включен брандмауэр, то необходимо добавить этот порт в список исключений.

Установка необходимых пакетов на клиенте

Для работы будут необходимы следующие пакеты:

  • qt-odbc
  • freetds

Установка для Fedora (16+)

Минимально для работы и тестирования соединения необходимы:

sudo yum install qt-odbc freetds

Для возможности настройки в графическом режиме дополнительно понадобятся:

sudo yum install unixODBC-kde

Установка для Ubuntu (12.04+) и Debian (squeeze+)

Минимально для работы необходимы:

sudo apt-get install libqt4-sql-odbc tdsodbc

Для возможности настройки в графическом режиме и тестирования соединения дополнительно понадобятся:

sudo apt-get install freetds-bin unixodbc unixodbc-bin

Поверка соединения через FreeTDS

Чтобы убедится, что соединение с вашим MSSQL Server возможно, настроим и проверим соединение средствами самой библиотеки FreeTDS.
Для этого в конфигурационный файл /etc/freetds.conf необходимо добавить следующее содержание:

[MSTEST]
host = 192.168.0.100
port = 1433
tds version = 8.0

Настройка и проверка соединения через unixODBC

Создание соединения и подключение в QGIS

Ссылки по теме