Подключение из Linux к Microsoft SQL Server

Для подключения из Linux к Microsoft SQL серверу нужен ODBC драйвер и утилита для подключения sqlcmd. В этой статье разберём как все это установить на Ubuntu 18. По аналогии все это можно использовать также на Alpine Linux, Debian, Red Hat Enterprise, Oracle, SUSE Linux Enterprise Server.

Установка

Инструкцию от Microsoft вы можете почитать тут! Для Ubuntu 18.04 проделаем следующее.

Установим curl, если он ещё не установлен:

# apt install curl

Для добавления ключей от репозитория нам понадобится gnupg2, установим:

# apt install gnupg2

Скачаем и установим ключи от репозитория:

# curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -

Добавим необходимый репозиторий:

# curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

 

Обновим кеш репозиториев:

 

# apt update

Установим драйвер ODBC:

# apt install msodbcsql17

Установим утилиту для работы с SQL:

# apt install mssql-tools

Пропишем путь в переменную PATH для доступа к утилитам:

# echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
# source ~/.bashrc

Для подключения к серверу используется такая команда:

# sqlcmd -S tcp:<ip_adress> -d <db_name> -U <login> -P <password>

Дальше можем, например, вывести список баз в базе данных:

1> SELECT name, database_id, create_date FROM sys.databases;
2> GO
name                                                                                                                             database_id create_date
------------------------------------------------------- ----------- -----------------------
master                                                            1 2003-04-08 09:13:36.390
tempdb                                                            2 2021-02-25 19:56:58.790
model                                                             3 2003-04-08 09:13:36.390
msdb                                                              4 2019-11-16 03:18:47.200
exch_test                                                         5 2020-02-19 11:17:29.647

(5 rows affected)
1>

То есть вначале мы записываем одну или несколько инструкций для SQL сервера, а затем вводим команду GO. Чтобы отключиться от сервера нужно выполнить команду EXIT:

1> EXIT

Драйвер odbc поставляется в виде библиотеки и лежит здесь:

# ls /opt/microsoft/msodbcsql17/lib64/
libmsodbcsql-17.7.so.2.1

Надеюсь статья была полезная! Спасибо за прочтение!