Гид по технологиям

Установка Microsoft SQL Server 2019 и инструментов на CentOS 8

• 5 min read • Databases • Обновлено 16 Nov 2025
Установка MSSQL Server 2019 на CentOS 8
Установка MSSQL Server 2019 на CentOS 8

Введение

Цель инструкции — развернуть MSSQL Server и инструменты на сервере CentOS 8. Подойдёт для локальных тестовых сред и разработческих машин. В продакшене дополнительно нужно настроить безопасность и резервное копирование.

Системные требования

  • CentOS 8
  • 4 ГБ ОЗУ или больше
  • Права root (или sudo)

Что мы сделаем

  • Установим python2
  • Добавим репозиторий MSSQL
  • Установим MSSQL Server
  • Установим и настроим MSSQL Tools
  • Протестируем подключение и создадим базу данных

Важно: инструкция использует официальные пакеты Microsoft для RHEL/CentOS. Внимательно проверяйте репозитории и совместимость версий перед установкой в рабочую среду.

Шаг 1 - Установка python2

MSSQL Server требует python2 для некоторых зависимостей. В CentOS 8 в репозитории AppStream есть несколько версий python.

Установите python2:

dnf install python2

После установки укажите альтернативу python (если требуется):

sudo alternatives --config python

Проверьте версию:

python --version

Ожидаемый вывод: python2.x — это означает, что команда python ссылается на Python 2.

Скриншот вывода версии Python на CentOS 8

Шаг 2 - Добавление репозитория MSSQL

Добавим официальный репозиторий Microsoft, чтобы можно было устанавливать пакеты mssql-server и mssql-tools.

Скачайте конфигурацию репозитория в каталог /etc/yum.repos.d/:

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo

Затем проверьте список доступных репозиториев:

sudo dnf repolist

Вы увидите добавленный репозиторий Microsoft в списке.

Список репозиториев с добавленным MSSQL

Совет по совместимости: в примере используется файл репозитория для RHEL 7. На CentOS 8 это часто работает, но в долгосрочной перспективе лучше использовать репозиторий и пакеты, официально поддерживающие вашу ОС.

Шаг 3 - Установка MSSQL Server

Скачайте RPM-пакеты MSSQL Server:

dnf download mssql-server

Установите скачанные RPM-пакеты:

sudo rpm -Uvh --nodeps mssql-server*rpm

После установки выполните первоначальную настройку с помощью mssql-conf:

sudo /opt/mssql/bin/mssql-conf setup

В процессе вы сможете выбрать выпуск (например, Developer). Примите лицензионное соглашение, введя YES, и задайте надёжный пароль для учётной записи SA.

Настройка mssql-conf — выбор версии и ввод пароля

Проверьте статус сервиса:

systemctl status mssql-server

Ожидается, что служба будет активной (active and running).

Статус сервиса mssql-server активен

Откройте порт 1433 в firewalld:

sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload

После этого MSSQL Server на CentOS 8 будет установлен и доступен по сети (при условии правильной настройки firewall и сетевых правил).

Подтверждение успешной установки MSSQL Server

Шаг 4 - Установка и настройка MSSQL Tools

Mssql-tools содержат клиент sqlcmd и утилиту bcp. Они нужны для подключения и выполнения команд.

Добавьте репозиторий для инструментов:

sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo

Установите инструменты:

sudo dnf install -y mssql-tools unixODBC-devel

Подтвердите лицензионное соглашение при запросе (Yes).

Установка mssql-tools — подтверждение лицензии

Добавьте каталог бинарников mssql-tools в PATH, чтобы команды были доступны в сессии:

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

Загрузите изменения:

source ~/.bashrc

Проверьте PATH:

echo $PATH

Вы должны увидеть /opt/mssql-tools/bin в списке.

Проверка переменной PATH с каталогом mssql-tools

Примечание: если вы используете другую оболочку (например, zsh), добавьте строку в соответствующий файл конфигурации (например, ~/.zshrc).

Шаг 5 - Тестирование

Подключитесь к серверу с помощью sqlcmd (как пользователь SA):

sqlcmd -S localhost -U SA
Password:

Введите пароль, который вы задали при setup. После входа создайте базу данных hakaseDB:

create database hakaseDB

Проверьте наличие базы данных:

select name from sys.databases
go

В списке должна появиться hakaseDB. Это подтверждает работоспособность сервера и инструментов.

Критерии приёмки

  • Служба mssql-server запущена и активна.
  • Порт 1433 открыт и доступен там, где это требуется.
  • sqlcmd успешно подключается к серверу локально.
  • База данных создаётся и видна в sys.databases.

Руководство по устранению неполадок

Если что-то не работает — выполните поэтапную проверку:

  1. Проверка статуса службы:
systemctl status mssql-server
  1. Просмотр логов для диагностики ошибок:
journalctl -u mssql-server -b --no-pager
  1. Проверка прослушиваемых портов:
ss -tlnp | grep 1433
  1. Проверка SELinux и firewalld: временно отключите или настройте правила, если они блокируют соединения (в продакшне настройте корректно, не отключайте без необходимости).

  2. Убедитесь, что PATH содержит /opt/mssql-tools/bin и что sqlcmd доступен в текущей сессии.

Рекомендации по безопасности

  • Смените пароль SA на сложный и храните его в безопасном хранилище.
  • Ограничьте доступ к порту 1433 с помощью брандмауэра и сетевых правил.
  • Развертывайте SSL/TLS для шифрования клиентских подключений.
  • Подумайте об использовании интеграции с AD или управляемых учётных записей для аутентификации.

Важно: никогда не оставляйте служебные учётные записи с простыми паролями в публично доступных сетях.

Контроль соответствия и роли

Список задач по ролям:

  • Системный администратор:

    • Подготовить ОС и репозитории.
    • Настроить firewall и SELinux.
    • Мониторить сервисы.
  • DBA:

    • Провести начальную конфигурацию mssql-conf.
    • Создать и проверить базы данных.
    • Настроить бэкапы и точки восстановления.
  • Разработчик:

    • Проверить подключение через sqlcmd.
    • Выполнить тестовые сценарии CRUD.

Мини-методология развертывания (чеклист)

  1. Предпроверка: обновление ОС, проверка доступного места и памяти.
  2. Установка зависимостей (python2).
  3. Добавление репозиториев Microsoft.
  4. Установка mssql-server и первичная настройка.
  5. Установка mssql-tools и настройка PATH.
  6. Тестирование и валидация.
  7. Настройка безопасности и мониторинга.

Краткий словарь терминов

  • mssql-conf — утилита конфигурации MSSQL Server.
  • sqlcmd — консольный клиент для выполнения T-SQL команд.
  • SA — системный администратор базы данных (логин с правами администратора).
  • unixODBC — набор библиотек ODBC для Unix, необходим для некоторых клиентских программ.

Полезные команды (cheat sheet)

# Установка python2
dnf install python2

# Добавление репозиториев
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo

# Установка сервера
dnf download mssql-server
sudo rpm -Uvh --nodeps mssql-server*rpm
sudo /opt/mssql/bin/mssql-conf setup
systemctl status mssql-server

# Открыть порт
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload

# Установка инструментов
sudo dnf install -y mssql-tools unixODBC-devel
# Добавить в PATH
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
source ~/.bashrc

# Тестовое подключение
sqlcmd -S localhost -U SA

Совместимость и примечания

  • Пакеты для RHEL 7 часто работают на CentOS 8, но это не всегда гарантировано. Для долгосрочной эксплуатации используйте официально поддерживаемые версии и репозитории.
  • Python 2 устарел. Если новые версии MSSQL потребуют Python 3, обновите окружение в соответствии с рекомендациями Microsoft.

Итог

Установка Microsoft SQL Server 2019 и mssql-tools на CentOS 8 состоит из семи основных шагов: подготовить систему, установить python2, добавить репозитории, установить сервер, выполнить первоначальную настройку, установить инструменты и протестировать подключение. После успешной установки обязательно реализуйте политику безопасности и настройте систему резервного копирования.

Ссылки

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро