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

Применимо к: даSQL Server (все поддерживаемые версии)  — Linux

В этой статье приводятся инструкции по установке, обновлению и удалению SQL Server 2017 и SQL Server 2019 на Linux.

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

Совет

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

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

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

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

Платформа Поддерживаемые версии Получить
Red Hat Enterprise Linux 7.7–7.9, 8.0–8.3 Get RHEL
SUSE Linux Enterprise Server Версия 12 с пакетом обновления 3–5 (SP3–SP5) Получить SLES v12
Ubuntu 16.04, 18.04 Получить Ubuntu 18.04
Подсистема Docker 1.8 и выше Получить Docker

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

Платформа Файловая система Руководство по установке Получить
Red Hat Enterprise Linux 7.7–7.9 или 8.0–8.3 Server XFS или EXT4 Руководство по установке Получить RHEL 8.0
SUSE Enterprise Linux Server версии 12 с пакетом обновления 3–5 (SP3–SP5) XFS или EXT4 Руководство по установке Получить SLES v12
Ubuntu 16.04 LTS, 18.04 LTS, 20.04 LTS XFS или EXT4 Руководство по установке Получить Ubuntu 20.04
Подсистема Docker Engine 1.8+ на базе Windows, Mac или Linux Недоступно Руководство по установке Получить Docker

Совет

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

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

Примечание

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

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

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

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

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

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

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

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

Установка SQL Server

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

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

Вы также можете запустить 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 2019.

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

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

  1. Установите программы командной строки SQL Server, если это еще не сделано.

  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. В нем также принимаются условия лицензионного соглашения (ACCEPT_EULA) и задается пароль системного администратора (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 Server на Linux см. в этой статье.