Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:SQL Server в Linux
В этом кратком руководстве вы установите SQL Server 2017 (14.x) в Red Hat Enterprise Linux (RHEL) 8.x. Затем подключитесь с помощью sqlcmd для создания первой базы данных и выполнения запросов.
В этом кратком руководстве вы установите SQL Server 2019 (15.x) в Red Hat Enterprise Linux (RHEL) 8.x. Затем подключитесь с помощью sqlcmd для создания первой базы данных и выполнения запросов.
В этом быстром старте вы устанавливаете SQL Server 2022 (16.x) на Red Hat Enterprise Linux (RHEL) 9.x. Затем подключитесь с помощью sqlcmd для создания первой базы данных и выполнения запросов.
В этом быстром старте вы устанавливаете SQL Server 2025 (17.x) на Red Hat Enterprise Linux (RHEL) 10.x. Затем подключитесь с помощью sqlcmd для создания первой базы данных и выполнения запросов.
Note
RHEL 9 поддерживается начиная с SQL Server 2022 (16.x) CU 10. RHEL 10 поддерживается начиная с SQL Server 2025 (17.x) CU 1. TLS 1.3 по умолчанию включена на SQL Server 2025 (17.x).
Если вы хотите автоматизировать установку с помощью Ansible, см. краткое руководство. Развертывание SQL Server в Linux с помощью сборника схем Ansible.
Для получения дополнительной информации о поддерживаемых платформах см. сведения о выпуске SQL Server в Linux.
Tip
Для быстрого запуска требуется ввод пользователя и подключение к интернету. Если вы заинтересованы в процедурах установки без участия пользователя
Prerequisites
Вам нужен компьютер с поддерживаемой версией RHEL и как минимум 2 ГБ памяти.
Чтобы установить Red Hat Enterprise Linux на собственном компьютере, перейдите на страницу https://access.redhat.com/products/red-hat-enterprise-linux/evaluation. Можно также создать виртуальные машины RHEL в Azure. См. статью Создание виртуальных машин Linux и управление ими с помощью Azure CLI и используйте параметр --image RHEL в вызове az vm create.
Если вы ранее установили предварительную версию SQL Server, перед выполнением этих действий необходимо сначала удалить старый репозиторий. Дополнительные сведения см. в статье Настройка репозиториев для установки и обновления SQL Server на Linux.
Если вы ранее установили предварительную версию SQL Server, перед выполнением этих действий необходимо сначала удалить старый репозиторий. Дополнительные сведения см. в статье "Настройка репозиториев для установки и обновления SQL Server 2025 в Linux".
Сведения о других требованиях к системе см. в статье Требования к системе для SQL Server на Linux.
Чтобы настроить экземпляр SQL Server в соответствии с рекомендуемыми стандартами, см. следующие сведения:
- Рекомендации по производительности: хранилище, ядро, ЦП и сеть для SQL Server на Linux
- Рекомендации по оптимизации производительности: использование памяти SQL Server в Linux
Установка SQL Server
Следующие команды для установки SQL Server ссылаются на репозиторий RHEL 8. RHEL 8 не поставляется с python2 предустановленным, но для SQL Server это необходимо. Перед началом действий по установке SQL Server выполните команду и убедитесь, что python2 он выбран в качестве интерпретатора:
sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands:
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command:
sudo alternatives --config python
Дополнительные сведения см. в статье по установке компонента python2 и настройке его как интерпретатора по умолчанию в следующем блоге: https://www.redhat.com/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.
Начиная с RHEL 9, вы можете запустить SQL Server как ограниченное приложение с поддержкой SELinux. Дополнительные сведения о ограниченных и неконфинированных приложениях с SELinux см. в статье "Начало работы с SELinux".
Чтобы запустить SQL Server в качестве ограниченного приложения, выполните следующие действия.
Убедитесь, что SELinux включен и находится в режиме принудительного применения.
Установите пакет
mssql-server, выполнив действия, описанные далее в этом разделе.Установите пакет
mssql-server-selinux.sudo yum install -y mssql-server-selinux
Note
Вы по-прежнему можете установить и запустить SQL Server как неопределенное приложение, как и в предыдущих версиях RHEL.
Чтобы настроить SQL Server в RHEL, выполните следующие команды в терминале, чтобы установить mssql-server пакет:
Скачайте конфигурационный файл репозитория RHEL SQL Server 2017 (14.x):
sudo curl -fsSL -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2017.repo
Скачайте конфигурационный файл репозитория SQL Server 2019 (15.x) RHEL:
sudo curl -fsSL -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
Скачайте конфигурационный файл репозитория SQL Server 2022 (16.x) RHEL 9:
sudo curl -fsSL -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/9/mssql-server-2022.repo
Применимо к: SQL Server 2025 (17.x) CU 1 и более поздних версий.
Скачайте конфигурационный файл репозитория SQL Server 2025 (17.x) RHEL 10:
curl -fsSL https://packages.microsoft.com/config/rhel/10/mssql-server-2025.repo | sudo tee /etc/yum.repos.d/mssql-server-2025.repo
Tip
Чтобы установить другую версию SQL Server, см. версии этой статьи для SQL Server 2017, SQL Server 2019, SQL Server 2022 или SQL Server 2025.
Выполните следующую команду для установки SQL Server:
sudo yum install -y mssql-serverПосле завершения установки пакета запустите
mssql-conf setup, используя его полный путь. Следуйте инструкциям, чтобы задатьsaпароль и выбрать выпуск. Напоминаем, что следующие выпуски SQL Server имеют бесплатные лицензии: Evaluation, Developer и Express.sudo /opt/mssql/bin/mssql-conf setupCaution
Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.
После завершения настройки убедитесь, что служба запущена:
systemctl status mssql-server --no-pagerЧтобы разрешить удаленные подключения, откройте порт SQL Server в брандмауэре в RHEL. По умолчанию для SQL Server используется TCP-порт 1433. Если вы используете FirewallD в качестве брандмауэра, используйте следующие команды:
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent sudo firewall-cmd --reload
На этом этапе SQL Server работает на компьютере RHEL и готов к использованию.
Отключите учетную запись sa в соответствии с рекомендациями
При подключении к экземпляру SQL Server с помощью учетной записи системного администратора (sa) в первый раз после установки важно выполнить эти действия, а затем немедленно отключить sa учетную запись в качестве рекомендации по безопасности.
Создайте новое имя входа и назначьте его членом серверной роли sysadmin.
В зависимости от того, используется ли у вас контейнерное или неконтейнерное развертывание, включите проверку подлинности Windows, создайте новое имя входа на основе Windows и добавьте его в роль сервера sysadmin.
В противном случае создайте учетную запись, используя проверку подлинности SQL Server, и добавьте ее в роль сервера sysadmin.
Подключитесь к экземпляру SQL Server с помощью нового имени входа, которое вы создали.
saОтключите учетную запись, как рекомендуется для обеспечения безопасности.
Установка программ командной строки SQL Server
Чтобы создать базу данных, необходимо подключиться к экземпляру SQL Server с помощью средства, которое может выполнять Transact-SQL инструкции. Следующие шаги устанавливают утилиты командной строки SQL Server: утилита sqlcmd и утилита bcp.
Чтобы установить mssql-tools18 в Red Hat Enterprise Linux, выполните следующие действия.
- RHEL 10 поддерживается начиная с SQL Server 2025 (17.x) CU 1.
- RHEL 9 поддерживается начиная с SQL Server 2022 (16.x) CU 10.
- RHEL 8 поддерживается начиная с SQL Server 2017 (14.x) CU 20.
Скачайте файл конфигурации репозитория Microsoft Red Hat.
curl -fsSL https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
Скачайте файл конфигурации репозитория Microsoft Red Hat.
curl -fsSL https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
Скачайте конфигурационный файл репозитория Microsoft Red Hat из репозиториума RHEL 9. Те же версии средств также работают для RHEL 10.
curl -fsSL https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
Если установлена предыдущая версия mssql-tools, удалите все старые пакеты unixODBC.
sudo yum remove mssql-tools unixODBC-utf16 unixODBC-utf16-develВыполните следующие команды, чтобы установить mssql-tools18 с пакетом разработчика unixODBC.
sudo yum install -y mssql-tools18 unixODBC-develЧтобы обновить до последней версии mssql-tools18, выполните следующие команды:
sudo yum check-update sudo yum update mssql-tools18Необязательно: Добавьте
/opt/mssql-tools18/bin/вPATHпеременную среды в оболочке Bash.Чтобы сделать
sqlcmdиbcpдоступными из оболочки Bash для сеансов входа, изменитеPATHв файле~/.bash_profileс помощью следующей команды:echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bash_profile source ~/.bash_profileЧтобы сделать
sqlcmdиbcpдоступными из оболочки Bash для интерактивных и сеансов без логина, изменитеPATHв файле~/.bashrcс помощью следующей команды:echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc source ~/.bashrc
Подключитесь локально
Следующие действия используют программу sqlcmd для локального подключения к новому экземпляру SQL Server. Скачайте и установите программу sqlcmd для Windows, Linux и macOS.
Caution
Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.
Запустите
sqlcmdс параметрами для имени SQL Server (-S), имени пользователя (-U) и пароля (-P). В этом руководстве вы подключаетесь локально, поэтому имя сервера —localhost. Имя пользователя —sa, а пароль — это тот, который вы указали для учетной записиsaво время установки.sqlcmd -S localhost -U sa -P '<password>'Note
Более новые версии
sqlcmdпо умолчанию защищены. Дополнительные сведения о шифровании подключений см. в программе sqlcmd для Windows, Linux и macOS. Если подключение не осуществляется, вы можете добавить-Noпараметр вsqlcmd, чтобы указать, что шифрование является необязательным, а не обязательным.Вы можете не указывать пароль в командной строке. В этом случае вы получите запрос на его ввод.
Если позже вы решите удаленно подключиться, укажите имя компьютера или IP-адрес параметра
-Sи убедитесь, что порт 1433 открыт на брандмауэре.Если все пройдет успешно, перейдите в командную строку
sqlcmd:1>.Если произойдет сбой подключения, сначала попробуйте узнать проблему по сообщению об ошибке. Затем ознакомьтесь с рекомендациями по устранению неполадок с подключением.
Создание и запрос данных
В следующих разделах описано, как использовать sqlcmd для создания новой базы данных, добавления данных и выполнения базового запроса.
Дополнительные сведения о написании инструкций и запросов Transact-SQL (T-SQL) см. в разделе Учебник. Написание инструкций Transact-SQL.
Создание базы данных
Выполните следующие шаги, чтобы создать базу данных TestDB.
Из
sqlcmdкомандной строки вставьте следующую команду T-SQL для создания тестовой базы данных:CREATE DATABASE TestDB;В следующей строке напишите запрос, который должен вернуть имена всех баз данных на сервере:
SELECT Name FROM sys.databases;Предыдущие две команды не выполняются немедленно. Необходимо ввести
GOна новой строке, чтобы выполнить предыдущие команды:GO
Вставка данных
Затем создайте новую таблицу, dbo.Inventoryи вставьте две новые строки.
В командной строке
sqlcmdпереключите контекст в новуюTestDBбазу данных:USE TestDB;Создайте новую таблицу с именем
dbo.Inventory:CREATE TABLE dbo.Inventory ( id INT, name NVARCHAR (50), quantity INT, PRIMARY KEY (id) );Вставьте данные в новую таблицу:
INSERT INTO dbo.Inventory VALUES (1, 'banana', 150); INSERT INTO dbo.Inventory VALUES (2, 'orange', 154);Введите
GO, чтобы выполнить предыдущие команды:GO
Выбор данных
Теперь выполните запрос, чтобы вернуть данные из таблицы dbo.Inventory.
В командной строке
sqlcmdвведите запрос, возвращающий строки изdbo.Inventoryтаблицы, где количество больше 152:SELECT * FROM dbo.Inventory WHERE quantity > 152;Выполните команду:
GO
Выйти из командной строки sqlcmd
Чтобы завершить sqlcmd сеанс, введите QUIT:
QUIT
Оптимальные методы повышения производительности
После установки SQL Server на Linux ознакомьтесь с рекомендациями по настройке Linux и SQL Server для обеспечения оптимальной производительности в рабочих сценариях. Дополнительные сведения можно найти здесь
- Рекомендации по производительности: хранилище, ядро, ЦП и сеть для SQL Server на Linux
- Рекомендации по оптимизации производительности: использование памяти SQL Server в Linux
Кроссплатформенные средства обработки данных
Помимо sqlcmd, можно использовать следующие кроссплатформенные средства для управления SQL Server:
| инструмент | Description |
|---|---|
| Visual Studio Code | Кроссплатформенный редактор графического интерфейса, который запускает операторы T-SQL с расширением MSSQL. |
| Powershell | Инструмент для кроссплатформенной автоматизации и конфигурирования, основанный на командлетах. |
Подключение из Windows
Инструменты SQL Server в Windows подключаются к экземплярам SQL Server в Linux так же, как они подключались бы к любому удаленному экземпляру SQL Server.
Если у вас есть Windows компьютер, который может подключиться к компьютеру Linux, выполните те же действия, описанные в этой статье из командной строки Windows с sqlcmd. Необходимо использовать имя или IP-адрес целевого компьютера на Linux, а не localhost, и открыть TCP-порт 1433 на компьютере с SQL Server. Если у вас возникли проблемы с подключением из Windows, см. рекомендации по устранению неполадок с подключением.
Другие инструменты, которые запускаются в Windows, но подключаются к SQL Server на Linux:
- Управление SQL Server на Linux с помощью SQL Server Management Studio в Windows
- Использование PowerShell в Windows для управления SQL Server на Linux
- Создание баз данных для SQL Server на Linux с помощью Visual Studio
Другие сценарии развертывания
Дополнительные сведения о других сценариях установки см. в следующих ресурсах:
- Обновление. Узнайте, как обновить существующую установку SQL Server на Linux
- Удаление: Деинсталляция SQL Server на Linux
- Автоматическая установка: узнайте, как скриптировать установку без запросов
- Автономная установка. Узнайте, как вручную скачать пакеты для автономной установки
Ответы на часто задаваемые вопросы см. в статье SQL Server на Linux вопросы и ответы.
Связанный контент
Примите участие в разработке документации по SQL
Знаете ли вы, что содержимое SQL можно изменить самостоятельно? При этом вы не только помогаете улучшить нашу документацию, но и получаете признание в качестве участника страницы.
Дополнительные сведения см. в разделе Редактирование документации Microsoft Learn.