Руководство по установке SQL Server на Linux

Применимо к:SQL Server — Linux

В этой статье приведены рекомендации по установке, обновлению и удалению SQL Server 2017 (14.x), SQL Server 2019 (15.x) и SQL Server 2022 (16.x) в Linux.

Дополнительные сведения о других сценариях развертывания см. в следующих источниках:

Здесь рассматривается несколько сценариев развертывания. Если вам нужны только пошаговые инструкции по установке, перейдите к одному из кратких руководств.

Ответы на часто задаваемые вопросы об SQL Server на Linux см. в этой статье.

Поддерживаемые платформы

SQL Server поддерживается на платформах Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise Server (SLES) и Ubuntu. Он также поддерживается как образ контейнера, который может выполняться в Kubernetes, OpenShift и подсистеме Docker в Linux.

Платформа Файловая система Руководство по установке
Red Hat Enterprise Linux 7.7 — 7.9 или 8.x Server XFS или EXT4 Руководство по установке
SUSE Linux Enterprise Server версии 12 с пакетом обновления 3 (SP3) — SP5 XFS или EXT4 Руководство по установке
Ubuntu 16.04 LTS 1, 18.04 LTS XFS или EXT4 Руководство по установке
Движок Docker 1.8+ на Linux Н/П Руководство по установке

1 Поддержка SQL Server в Ubuntu 16.04 ограничена. В конце апреля 2021 г. ОС Ubuntu 16.04 была переведена со стандартного пятилетнего периода обслуживания для выпусков с долгосрочной поддержкой (LTS) на поддержку Extended Security Maintenance (ESM). Дополнительные сведения см. в статье о переходе Ubuntu 16.04 LTS на поддержку Extended Security Maintenance (ESM) | Ubuntu.

Совет

Дополнительные сведения см. в требованиях к системе для SQL Server на базе Linux. Актуальную политику поддержки для SQL Server см. в статье Политика технической поддержки для Microsoft SQL Server.

Рабочие нагрузки следует запускать на поддерживаемых платформах, таких как Red Hat Enterprise Linux, SUSE Linux Enterprise Server и Ubuntu Pro, так как они получают регулярные обновления безопасности ОС и имеют варианты покрытия, необходимые для развертывания корпоративных баз данных.

Платформа Файловая система Руководство по установке Получить
Red Hat Enterprise Linux 7.7 — 7.9 или 8.x Server XFS или EXT4 Руководство по установке Получение RHEL 8
SUSE Linux Enterprise Server версии 12 (SP3 — SP5) или версии 15 (SP1 — SP3) XFS или EXT4 Руководство по установке Получить SLES версии 15
Ubuntu 16.04 1, 18.04 или 20.04 XFS или EXT4 Руководство по установке Получить Ubuntu 20.04
Подсистема Docker Engine 1.8+ на базе Windows, Mac или Linux Н/П Руководство по установке Получить Docker

1 Поддержка SQL Server в Ubuntu 16.04 ограничена. В конце апреля 2021 г. ОС Ubuntu 16.04 была переведена со стандартного пятилетнего периода обслуживания для выпусков с долгосрочной поддержкой (LTS) на поддержку Extended Security Maintenance (ESM). Дополнительные сведения см. в статье о переходе Ubuntu 16.04 LTS на поддержку Extended Security Maintenance (ESM) | Ubuntu.

Совет

Дополнительные сведения см. в требованиях к системе для SQL Server на базе Linux. Актуальную политику поддержки для SQL Server см. в статье Политика технической поддержки для Microsoft SQL Server.

Рабочие нагрузки следует запускать на поддерживаемых платформах, таких как Red Hat Enterprise Linux, SUSE Linux Enterprise Server и Ubuntu Pro, так как они получают регулярные обновления безопасности ОС и имеют варианты покрытия, необходимые для развертывания корпоративных баз данных.

Платформа Файловая система Руководство по установке Получить
Red Hat Enterprise Linux 8.x Server или 9.x Server XFS или EXT4 Руководство по установке Получение RHEL 9
SUSE Linux Enterprise Server версии 15 (SP1 — SP4) XFS или EXT4 Руководство по установке Получить SLES версии 15
Ubuntu 20.04 или 22.04 XFS или EXT4 Руководство по установке Получение Ubuntu 22.04
Движок Docker 1.8+ на Linux Н/П Руководство по установке Получить Docker

Совет

Дополнительные сведения см. в требованиях к системе для SQL Server на базе Linux. Актуальную политику поддержки для SQL Server см. в статье Политика технической поддержки для Microsoft SQL Server.

Корпорация Майкрософт также поддерживает развертывание контейнеров SQL Server и управление ими с помощью OpenShift и Kubernetes.

Примечание.

SQL Server протестирован и поддерживается в Linux для перечисленных дистрибутивов. Чтобы установить SQL Server в неподдерживаемой операционной системе, ознакомьтесь с разделом Политика поддержки в статье о технической поддержке Microsoft SQL Server.

Требования к системе

Ниже перечислены требования к системе для установки SQL Server на Linux:

Требование
Память 2 ГБ 1
Файловая система XFS или EXT4 (другие файловые системы, такие как BTRFS, не поддерживаются)
Место на диске 6 ГБ
Частота процессора 2 ГГц
Ядра процессора 2 ядра
Тип процессора только совместимый с x64

1 2 ГБ — это минимальная требуемая память для запуска SQL Server на Linux, в которой размещаются системные потоки и внутренние процессы. Этот объем необходимо учитывать при настройке максимальной памяти сервера и MemoryLimit МБ.

При использовании удаленных общих папок NFS в рабочей среде необходимо обратить внимание на следующие требования к поддержке.

  • Версия NFS должна быть 4.2 или более поздняя. Более старые версии NFS не поддерживают необходимые возможности, такие как использование команды fallocate и создание разреженных файлов, общие для современных файловых систем.
  • Найдите только /var/opt/mssql каталоги на подключении NFS. Другие файлы, например системные двоичные файлы SQL Server, не поддерживаются.

Настройка исходных репозиториев

При установке или обновлении SQL Server вы получите последнюю версию SQL Server из настроенного репозитория Майкрософт. В кратких руководствах используется репозиторий накопительного обновления CU для SQL Server. Дополнительные сведения о репозиториях и их настройке см. в статье "Настройка репозиториев для установки и обновления SQL Server на Linux".

Установка SQL Server

Вы можете установить SQL Server на Linux из командной строки. Пошаговые инструкции см. в следующих кратких руководствах.

Платформа Краткие руководства по установке
Red Hat Enterprise Linux (RHEL) 2017 2019 | 2022 |
SUSE Linux Enterprise Server (SLES) 2017 2019 | 2022 |
Ubuntu 2017 2019 | 2022 |
Docker 2017 2019 | 2022 |

Вы также можете запустить SQL Server на Linux на виртуальной машине Azure. Дополнительные сведения см. в статье Подготовка виртуальной машины SQL в Azure.

После установки рекомендуется внести дополнительные изменения в конфигурацию для достижения оптимальной производительности. Дополнительные сведения см. в статье Рекомендации по производительности и конфигурации для SQL Server на Linux.

Обновление или смена выпуска SQL Server

Чтобы обновить mssql-server пакет до последней версии, используйте одну из следующих команд на основе платформы:

Платформа Команды обновления пакетов
RHEL sudo yum update mssql-server
SLES sudo zypper update mssql-server
Ubuntu sudo apt-get update
sudo apt-get install mssql-server

Эти команды скачивают новейшие пакеты и заменяют двоичные файлы, расположенные в папке /opt/mssql/. Эта операция не влияет на созданные пользователем базы данных и системные базы данных.

Чтобы обновить SQL Server, сначала измените настроенный репозиторий на нужную версию SQL Server. Затем используйте ту же update команду, чтобы обновить версию SQL Server. Это возможно только в том случае, если два репозитория поддерживают этот вариант обновления.

Откат SQL Server

Чтобы выполнить откат или перейти на использование предыдущего выпуска SQL Server, сделайте следующее:

  1. Определите номер версии для пакета SQL Server, на который будет выполняться возврат. Список номеров пакетов см. в заметках о выпуске:

  2. Перейдите на предыдущую версию SQL Server. В следующих командах замените <version_number> номером версии SQL Server, который был определен на шаге 1.

    Платформа Команды для обновления пакета
    RHEL sudo yum downgrade mssql-server-<version_number>.x86_64
    SLES sudo zypper install --oldpackage mssql-server=<version_number>
    Ubuntu sudo apt-get install mssql-server=<version_number>
    sudo systemctl start mssql-server

Примечание.

Поддерживается только переход на использование более раннего выпуска с тем же основным номером версии, например SQL Server 2022 (16.x).

Проверка установленной версии SQL Server

Чтобы проверить текущую версию и выпуск SQL Server на Linux, выполните следующую процедуру.

  1. Если он еще не установлен, см. статью "Установка средств командной строки SQL Server sqlcmd и bcp в Linux".

  2. С помощью программы sqlcmd выполните команду Transact-SQL, которая выводит версию и выпуск SQL Server.

    sqlcmd -S localhost -U SA -Q 'select @@VERSION'
    

Удаление SQL Server

Чтобы удалить mssql-server пакет в Linux, используйте одну из следующих команд на основе платформы:

Платформа Команды удаления пакетов
RHEL sudo yum remove mssql-server
SLES sudo zypper remove mssql-server
Ubuntu sudo apt-get remove mssql-server

При удалении пакета созданные файлы базы данных не удаляются. Чтобы удалить файлы базы данных, выполните следующую команду:

sudo rm -rf /var/opt/mssql/

Автоматическая установка

Автоматическая установка выполняется следующим образом.

  • Выполните начальные шаги в кратких руководствах, чтобы зарегистрировать репозитории и установить SQL Server.
  • При запуске mssql-conf setup задайте переменные среды и используйте параметр -n (запросы выводиться не будут).

Следующий пример настраивает выпуск SQL Server Developer с переменной MSSQL_PID среды. Он также принимает EULA (ACCEPT_EULA) и задает пароль пользователя SA (MSSQL_SA_PASSWORD). Параметр -n выполняет установку без вывода запросов, где значения конфигурации извлекаются из переменных среды.

sudo MSSQL_PID=Developer ACCEPT_EULA=Y MSSQL_SA_PASSWORD='<YourStrong!Passw0rd>' /opt/mssql/bin/mssql-conf -n setup

Можно также создать сценарий, выполняющий другие действия. Например, установку других пакетов SQL Server.

Более подробный пример сценария см. в следующих примерах:

Автономная установка

Если компьютер Linux не имеет доступа к онлайн-репозиториям, которые используются в кратких руководствах, вы можете скачать файлы пакетов напрямую. Эти пакеты находятся в репозитории Майкрософт.https://packages.microsoft.com

Совет

После успешного выполнения действий по установке, приведенных в кратких руководствах, скачивать или вручную устанавливать пакеты SQL Server не требуется. Сведения в этом разделе актуальны только для автономных сценариев.

  1. Скачайте пакет ядра СУБД для своей платформы. Найдите ссылки на скачивание пакетов в разделе сведений о пакете примечания о выпуске.

  2. Переместите скачанный пакет на компьютер Linux. Если для скачивания пакетов вы использовали другой компьютер, переместить пакеты на компьютер Linux можно с помощью команды scp.

  3. Установите пакет ядра СУБД. В зависимости от платформы выполните одну из приведенных ниже команд. Замените имя файла пакета в этом примере именем скачанного пакета.

    Платформа Команда для установки пакета
    RHEL sudo yum localinstall mssql-server_versionnumber.x86_64.rpm
    SLES sudo zypper install mssql-server_versionnumber.x86_64.rpm
    Ubuntu sudo dpkg -i mssql-server_versionnumber_amd64.deb

    Примечание.

    Пакеты RPM (RHEL и SLES) можно установить с помощью команды rpm -ivh, однако команды из предыдущей таблицы автоматически устанавливают зависимости (если они доступны) из утвержденных репозиториев.

  4. Разрешение отсутствующих зависимостей. Возможно, на этом этапе отсутствуют зависимости. Если это не так, пропустите этот шаг. Если в Ubuntu у вас есть доступ к утвержденным репозиториям, содержащим эти зависимости, самым простым решением является использование команды apt-get -f install. Эта команда также завершает установку SQL Server. Чтобы проверить зависимости вручную, выполните приведенные ниже команды.

    Платформа Команда для вывода списка зависимостей
    RHEL rpm -qpR mssql-server_versionnumber.x86_64.rpm
    SLES rpm -qpR mssql-server_versionnumber.x86_64.rpm
    Ubuntu dpkg -I mssql-server_versionnumber_amd64.deb

    После устранения отсутствующих зависимостей можно повторить установку mssql-server пакета.

  5. Завершите установку SQL Server. Для завершения установки SQL Server воспользуйтесь средством mssql-conf.

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

Лицензирование и цены

SQL Server лицензируется одинаково для Linux и Windows. Дополнительные сведения о лицензировании и ценах на SQL Server см. на странице о лицензировании SQL Server.

Дополнительные функции и компоненты SQL Server

После установки SQL Server можно установить или включить дополнительные функции.

Получение справки

Примите участие в разработке документации по SQL

Знаете ли вы, что содержимое SQL можно изменить самостоятельно? Это не только улучшит нашу документацию, но и даст вам статус участника в создании этой страницы.

Дополнительные сведения см. в разделе Участие в работе над документацией по SQL Server.