Руководство по установке SQL Server на Linux
Область применения:
SQL Server (все поддерживаемые версии) — Linux
В статье приводится руководство по установке, обновлению и удалению SQL Server 2017 (14.x) и SQL Server 2019 (15.x) на 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.5 | 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.5 Server | XFS или EXT4 | Руководство по установке | Получить RHEL 8.0 |
| SUSE Enterprise Linux Server версии 12 или 15 с пакетом обновления 3–5 (SP3–SP5) | XFS или EXT4 | Руководство по установке | Получить SLES версии 15 |
| 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 updatesudo apt-get install mssql-server |
Эти команды скачивают новейшие пакеты и заменяют двоичные файлы, расположенные в папке /opt/mssql/. Эта операция не влияет на созданные пользователем базы данных и системные базы данных.
Чтобы обновить SQL Server, сначала измените настроенный репозиторий на нужную версию SQL Server. Затем используйте ту же команду update, чтобы обновить версию SQL Server. Это возможно только в том случае, если два репозитория поддерживают этот вариант обновления.
Откат SQL Server
Чтобы выполнить откат или перейти на использование предыдущего выпуска SQL Server, выполните следующие действия.
Определите номер версии для пакета SQL Server, на который будет выполняться возврат. Список номеров пакетов см. в заметках о выпуске.
Перейдите на предыдущую версию SQL Server. В следующих командах замените
<version_number>номером версии SQL Server, который был определен на шаге 1.Платформа Команды для обновления пакета RHEL sudo yum downgrade mssql-server-<version_number>.x86_64SLES 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, выполните следующую процедуру.
Установите программы командной строки SQL Server, если это еще не сделано.
С помощью программы 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.
Более подробный пример сценария см. в следующих примерах:
- Сценарий автоматической установки Red Hat
- Сценарий автоматической установки SUSE
- Сценарий автоматической установки Ubuntu
Автономная установка
Если компьютер Linux не имеет доступа к онлайн-репозиториям, которые используются в кратких руководствах, вы можете скачать файлы пакетов напрямую. Эти пакеты находятся в репозитории Майкрософт по адресу https://packages.microsoft.com.
Совет
После успешного выполнения действий по установке, приведенных в кратких руководствах, скачивать или вручную устанавливать пакеты SQL Server не требуется. Сведения в этом разделе актуальны только для автономных сценариев.
Скачайте пакет ядра СУБД для своей платформы. Ссылки для скачивания пакета находятся в разделе сведений о пакете в заметках о выпуске.
Переместите скачанный пакет на компьютер Linux. Если для скачивания пакетов вы использовали другой компьютер, переместить пакеты на компьютер Linux можно с помощью команды scp.
Установите пакет ядра СУБД. В зависимости от платформы выполните одну из приведенных ниже команд. Замените имя файла пакета в этом примере именем скачанного пакета.
Платформа Команда для установки пакета RHEL sudo yum localinstall mssql-server_versionnumber.x86_64.rpmSLES sudo zypper install mssql-server_versionnumber.x86_64.rpmUbuntu sudo dpkg -i mssql-server_versionnumber_amd64.debПримечание
Пакеты RPM (RHEL и SLES) можно установить с помощью команды
rpm -ivh, однако команды из предыдущей таблицы автоматически устанавливают зависимости (если они доступны) из утвержденных репозиториев.Разрешите отсутствующие зависимости. На этом этапе зависимости могут отсутствовать. Если это не так, пропустите этот шаг. Если в Ubuntu у вас есть доступ к утвержденным репозиториям, содержащим эти зависимости, самым простым решением является использование команды
apt-get -f install. Эта команда также завершает установку SQL Server. Чтобы проверить зависимости вручную, выполните приведенные ниже команды.Платформа Команда для вывода списка зависимостей RHEL rpm -qpR mssql-server_versionnumber.x86_64.rpmSLES rpm -qpR mssql-server_versionnumber.x86_64.rpmUbuntu dpkg -I mssql-server_versionnumber_amd64.debПосле разрешения отсутствующих зависимостей попытайтесь установить пакет mssql-server еще раз.
Завершите установку 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
- Агент SQL Server
- Полнотекстовый поиск SQL Server
- Службы машинного обучения (R, Python)
- SQL Server Integration Services
Получение справки
- Идеи об SQL. Есть рекомендации по улучшению SQL Server?
- Вопросы и ответы по продуктам Майкрософт (SQL Server)
- DBA Stack Exchange (тег sql-server): вопросы по SQL Server
- Stack Overflow (тег sql-server): ответы на вопросы по разработке приложений SQL
- Reddit: общее обсуждение по SQL Server
- Условия лицензии и информация о Microsoft SQL Server
- Варианты поддержки для бизнес-пользователей
- Обратиться в Майкрософт
- Дополнительная справка и отзывы по SQL Server
Совет
Ответы на часто задаваемые вопросы об SQL Server на Linux см. в этой статье.