Установка Microsoft SQL Server на Ubuntu 20.04
Краткое руководство по быстрой установке и настройке Microsoft SQL Server 2019 на Ubuntu 20.04 и подключению через Azure Data Studio. Покрыты команды установки, первичная конфигурация (SA‑пароль, выбор редакции), проверка службы, базовые рекомендации по безопасности, варианты с Docker и чеклисты для ролей.
Введение
Одна из ключевых частей большинства программных систем — сервер баз данных. Сервер баз данных хранит и управляет данными для приложений. Начиная с 2017 года Microsoft выпускает нативную версию SQL Server для Linux, что позволяет разворачивать знакомую платформу на Ubuntu.
Цель этого руководства — пошагово показать установку Microsoft SQL Server 2019 на Ubuntu 20.04 и подключение с помощью Azure Data Studio.

Установка SQL Server 2019
Перед добавлением репозитория импортируйте публичный GnuPG‑ключ Microsoft, чтобы обеспечить проверку пакетов и защищённое скачивание из официальных репозиториев.
Выполните команду:
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -Затем зарегистрируйте репозиторий Microsoft для SQL Server 2019 (список пакетов для Ubuntu 20.04):
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"Важно: при использовании другой LTS‑версии Ubuntu замените в пути 20.04 на вашу версию, например 18.04.
Обновите индекс пакетов:
sudo apt updateИ установите пакет SQL Server:
sudo apt install -y mssql-serverКонфигурация сервера
После установки запустите мастер конфигурации для создания экземпляра и задания пароля администратора (SA):
sudo /opt/mssql/bin/mssql-conf setupПри первом запуске мастер попросит выбрать редакцию SQL Server (есть платные и бесплатные версии). В примере используется SQL Server Express (опция 3). Выберите соответствующий номер и нажмите Enter.
Далее нужно принять лицензионные условия — введите Yes для подтверждения. После этого установите сильный пароль для учётной записи SA.
Проверить статус службы SQL Server можно командой:
systemctl status mssql-serverЕсли служба не запущена, посмотрите логи в /var/opt/mssql/log и перезапустите службу:
sudo systemctl restart mssql-server
sudo journalctl -u mssql-server --no-pager | tail -n 100Установка Azure Data Studio
Для удобного управления используем Azure Data Studio — лёгкий кроссплатформенный графический инструмент для работы с базами данных.
Скачайте DEB‑пакет Azure Data Studio в папку Downloads с официального сайта Microsoft (может потребоваться выбрать версию для Linux).
Установите пакет (пример для версии 1.30.0 — проверьте актуальную версию и путь):
sudo apt install ~/Downloads/azuredatastudio-linux-1.30.0.debПримечание: команда предполагает, что DEB‑файл находится в папке ~/Downloads. Если файл в другом месте — укажите корректный путь.
Запуск Azure Data Studio
Запустите Azure Data Studio из терминала:
azuredatastudioДля подключения нажмите «New Connection» в разделе Start. Параметры для локального подключения:
- Server:
localhostили127.0.0.1 - Authentication Type: SQL Login
- User:
SA - Password: пароль, который вы задали при конфигурации
После подключения в левом меню отобразятся все вашей базы данных, и вы сможете выполнять запросы, бэкапы и администрирование.
Почему выбирать SQL‑базу данных
Отношение SQL‑СУБД (реляционная модель) остаётся популярным: она понятна администраторам, поддерживает сложные транзакции, гарантии целостности и зрелые инструменты администрирования.
NoSQL‑решения (например, MongoDB, Cosmos DB) полезны для задач с гибкой схемой данных и высокой масштабируемостью по горизонтали, но не заменяют реляционные БД для строгих транзакций.
Безопасность и hardening (основные рекомендации)
Важно минимизировать риски после установки. Базовые шаги:
- Ограничьте сетевой доступ: откройте порт 1433 только для доверенных хостов. Используйте UFW или iptables.
- Отключите удалённый доступ по SA: создайте отдельные учётные записи с минимальными правами.
- Настройте шифрование: примените TLS для клиентских подключений.
- Регулярно обновляйте систему и пакеты:
sudo apt update && sudo apt upgrade. - Включите аудитирование и логирование запросов, чтобы отслеживать подозрительную активность.
- Делайте регулярные бэкапы и проверяйте процедуру восстановления.
Важно: не храните SA‑пароль в открытом виде в скриптах. Используйте менеджеры секретов.
Альтернативные подходы к развёртыванию
- Docker: можно использовать официальный контейнер
mcr.microsoft.com/mssql/serverдля быстрого разворачивания и изоляции экземпляра. Подходит для тестовых сред и CI. - Облачные сервисы: разместить экземпляр в Azure SQL или Managed Instance, если нужна управляемая инфраструктура.
- Использование
mssql-tools: для командной работы с sqlcmd и bcp установите пакетmssql-tools.
Когда контейнеры не подходят: для продакшн‑окружений часто предпочитают установленный на VM или физический хост экземпляр из-за потребностей в хранилище и резервировании.
Чек-листы по ролям
Чек‑лист инженера по инфраструктуре:
- Установить mssql-server и проверить статус службы.
- Настроить бэкап‑политику и мониторинг дискового пространства.
- Настроить брандмауэр и правила доступа.
- Проверить обновления безопасности и план их применения.
Чек‑лист DBA:
- Создать политики паролей и аудит действий.
- Настроить резервные копии и провалидировать восстановление.
- Оптимизировать индексы и планы запросов.
- Настроить репликацию или кластер при необходимости.
Чек‑лист разработчика:
- Подключиться через Azure Data Studio или sqlcmd.
- Проверить права учётной записи приложения (минимально необходимые).
- Протестировать миграции схемы на тестовом экземпляре.
Критерии приёмки
Чтобы считать установку и настройку успешной, выполните следующие проверки:
- Служба
mssql-serverактивна и автоматически стартует при загрузке. - Подключение через Azure Data Studio (или sqlcmd) к
localhostс учётной записью SA проходит успешно. - Успешный запуск тестового запроса, например:
SELECT GETDATE();- Успешное создание резервной копии и восстановление на тестовом экземпляре.
- Брандмауэр блокирует входящий трафик к порту 1433 со всех сторон, кроме доверенных хостов.
Тестовые сценарии и приёмочные критерии
- Проверка подключения: открытие соединения к серверу и выполнение простого SELECT.
- Проверка прав: попытка выполнить привилегированную операцию учётной записью с ограниченными правами — должна быть запрещена.
- Восстановление: сделать бэкап, удалить тестовую базу и восстановить её из бэкапа — данные должны совпасть.
Частые проблемы и способы устранения
- Служба не стартует: проверьте логи в
/var/opt/mssql/logи свободное место на диске. - Подключение отклонено: проверьте UFW/iptables, слушает ли процесс порт 1433 (
ss -tlnp | grep 1433). - Ошибка лицензии или совместимости: убедитесь, что вы зарегистрировали правильный репозиторий для вашей версии Ubuntu.
Короткая методика развертывания (микро‑SOP)
- Импорт ключа и добавление репозитория.
- apt update и установка
mssql-server. - Запуск
mssql-conf setup, выбрать редакцию и задать SA‑пароль. - Установка Azure Data Studio и подключение.
- Настройка бэкапов, мониторинга и брандмауэра.
Факты и замечания
- Microsoft официально поддерживает SQL Server на Linux с 2017 года.
- Для Ubuntu используйте LTS‑версии для стабильной поддержки.
- Для тестов удобнее Docker; для продакшна обычно выбирают VM/physical host с управлением хранилищем.
Миграционные заметки и совместимость
- Если мигрируете с Windows‑сервера: проверьте совместимость версий, кодировку и collation баз.
- При переносе резервных копий между ОС используйте совместимые форматы и проверяйте целостность бэкапов.
Краткое резюме
Вы установили Microsoft SQL Server 2019 на Ubuntu 20.04, настроили экземпляр через mssql-conf, подключились по Azure Data Studio и получили набор практических рекомендаций по безопасности и операциям. Для тестов рассмотрите Docker, для продакшна — настройку резервирования и мониторинга.
Важное: всегда проверяйте бэкапы и обновления перед применением в рабочем окружении.
Похожие материалы
Управление уведомлениями сообщений на iPhone
Конвертация аудио в текст: веб, Windows, macOS
Как найти старые посты в соцсетях
Запланированные задачи ChatGPT: советы и шаблоны
Помощник фокусировки Windows 10 — настройка