Краткое руководство. Установка SQL Server и создание базы данных на SUSE Linux Enterprise Server
Область применения: SQL Server — Linux
В этом кратком руководстве вы установите SQL Server 2017 (14.x) в SUSE Linux Enterprise Server (SLES) версии 12. Затем вы сможете подключиться с помощью sqlcmd, чтобы создать первую базу данных и выполнять запросы.
Дополнительные сведения о поддерживаемых платформах см. в заметках о выпуске SQL Server 2017 для Linux.
В этом кратком руководстве описана установка SQL Server 2019 (15.x) в SUSE Linux Enterprise Server версии 15 (SP3). Затем вы сможете подключиться с помощью sqlcmd, чтобы создать первую базу данных и выполнять запросы.
Дополнительные сведения о поддерживаемых платформах см. в заметках о выпуске SQL Server 2019 для Linux.
В этом кратком руководстве описано, как установить SQL Server 2022 (16.x) в SUSE Linux Enterprise Server (SLES) версии 15 (SP3). Затем вы сможете подключиться с помощью sqlcmd, чтобы создать первую базу данных и выполнять запросы.
Дополнительные сведения о поддерживаемых платформах см . в заметках о выпуске SQL Server 2022 в Linux.
Совет
Для выполнения этого руководства требуется ввод данных пользователем и подключение к Интернету. Если вы заинтересованы в процедурах автоматической установки или автономной установки, ознакомьтесь с руководством по установке SQL Server на Linux.
Необходимые компоненты
Требуется компьютер, на котором установлена ОС SLES версии 12 с пакетом обновления 5 (SP5) и имеется по крайней мере 2 ГБ памяти. Должна использоваться файловая система XFS или EXT4. Другие файловые системы, например BTRFS, не поддерживаются.
У вас должен быть компьютер SLES версии 15 (SP1 ) с пакетом обновления 4 (SP4) с не менее чем 2 ГБ памяти. Должна использоваться файловая система XFS или EXT4. Другие файловые системы, например BTRFS, не поддерживаются.
У вас должен быть компьютер SLES версии 15 (SP1 ) с пакетом обновления 4 (SP4) с не менее чем 2 ГБ памяти. Должна использоваться файловая система XFS или EXT4. Другие файловые системы, например BTRFS, не поддерживаются.
Чтобы установить SUSE Linux Enterprise Server на собственном компьютере, перейдите на страницу https://www.suse.com/products/server. Можно также создать виртуальные машины SLES в Azure. См. статью Создание виртуальных машин Linux и управление ими с помощью Azure CLI и используйте параметр --image SLES
в вызове az vm create
.
Если вы ранее установили предварительную версию технологии сообщества (CTP) или кандидат выпуска (RC) SQL Server, перед выполнением этих действий необходимо сначала удалить старый репозиторий. Дополнительные сведения см. в статье Настройка репозиториев для установки и обновления SQL Server на Linux.
Примечание.
В настоящее время подсистема Windows для Linux для Windows 10 или Windows 11 не поддерживаются в качестве целевого объекта установки.
Сведения о других требованиях к системе см. в статье Требования к системе для SQL Server на Linux.
Установка SQL Server
Чтобы настроить SQL Server в SLES, выполните следующие команды в терминале для установки пакета mssql-server:
Скачайте файл конфигурации репозитория SQL Server 2017 (14.x) SLES.
sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2017.repo
Совет
Если вы хотите установить другую версию SQL Server, см . версию SQL Server 2019 (15.x) или SQL Server 2022 (16.x) этой статьи.
Обновите репозитории.
sudo zypper --gpg-auto-import-keys refresh
Установите ключ подписывания пакета Майкрософт в системе, импортировав его с помощью следующей команды:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
Перед установкой SQL Server и после регистрации и активации SUSE Linux Enterprise Server в Центре клиентов SUSE необходимо активировать модуль классических приложений и модуль средств разработки. Эти модули необходимы для некоторых зависимостей пакета SQL Server.
Теперь вы готовы установить SQL Server. Выполните следующие команды для установки SQL Server:
sudo zypper install -y mssql-server
После завершения установки пакета запустите
mssql-conf setup
и следуйте инструкциям, чтобы задатьsa
пароль и выбрать выпуск. Напоминаем, что следующие выпуски SQL Server имеют бесплатные лицензии: Evaluation, Developer и Express.sudo /opt/mssql/bin/mssql-conf setup
Внимание
Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.
По завершении настройки убедитесь в том, что служба работает.
systemctl status mssql-server
Если вы планируете подключаться удаленно, может потребоваться открыть в брандмауэре TCP-порт SQL Server (по умолчанию 1433). Если вы используете брандмауэр SUSE, необходимо изменить
/etc/sysconfig/SuSEfirewall2
файл конфигурации. ИзменитеFW_SERVICES_EXT_TCP
запись, чтобы включить номер порта SQL Server.FW_SERVICES_EXT_TCP="1433"
В результате сервер SQL Server будет запущен на компьютере SLES и готов к использованию!
Скачайте файл конфигурации репозитория SQL Server 2019 (15.x) SLES.
sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/15/mssql-server-2019.repo
Совет
Если вы хотите установить другую версию SQL Server, см . версию SQL Server 2017 (14.x) или SQL Server 2022 (16.x) этой статьи.
Обновите репозитории.
sudo zypper --gpg-auto-import-keys refresh
Установите ключ подписывания пакета Майкрософт в системе, импортировав его с помощью следующей команды:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
Перед установкой SQL Server и после регистрации и активации SUSE Linux Enterprise Server в Центре клиентов SUSE необходимо активировать модуль классических приложений и модуль средств разработки. Эти модули необходимы для некоторых зависимостей пакета SQL Server.
Теперь вы готовы установить SQL Server. Выполните следующие команды для установки SQL Server:
sudo zypper install -y mssql-server
После завершения установки пакета запустите
mssql-conf setup
и следуйте инструкциям, чтобы задатьsa
пароль и выбрать выпуск. Напоминаем, что следующие выпуски SQL Server имеют бесплатные лицензии: Evaluation, Developer и Express.sudo /opt/mssql/bin/mssql-conf setup
Внимание
Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.
По завершении настройки убедитесь в том, что служба работает.
systemctl status mssql-server
Если вы планируете удаленно подключиться, может потребоваться открыть TCP-порт SQL Server (по умолчанию 1433) в брандмауэре.
Примечание.
В SLES можно управлять брандмауэром,
firewalld
например. Установите его с помощьюsudo zypper install firewalld
, а затем запустите егоsudo systemctl start firewalld
. Добавьте правило брандмауэра сsudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
помощью, а затем перезагрузите брандмауэр,sudo firewall-cmd --reload
чтобы параметры вошли в силу.
В результате сервер SQL Server будет запущен на компьютере SLES и готов к использованию!
Скачайте файл конфигурации репозитория SLES SQL Server 2022 (16.x):
sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/15/mssql-server-2022.repo
Совет
Если вы хотите установить другую версию SQL Server, см . версию SQL Server 2017 (14.x) или SQL Server 2019 (15.x) этой статьи.
Обновите репозитории.
sudo zypper --gpg-auto-import-keys refresh
Установите ключ подписывания пакета Майкрософт в системе, импортировав его с помощью следующей команды:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
Перед установкой SQL Server и после регистрации и активации SUSE Linux Enterprise Server в Центре клиентов SUSE необходимо активировать модуль классических приложений и модуль средств разработки. Эти модули необходимы для некоторых зависимостей пакета SQL Server.
Теперь вы готовы установить SQL Server. Выполните следующие команды для установки SQL Server:
sudo zypper install -y mssql-server
После завершения установки пакета запустите
mssql-conf setup
и следуйте инструкциям, чтобы задатьsa
пароль и выбрать выпуск. Напоминаем, что следующие выпуски SQL Server имеют бесплатные лицензии: Evaluation, Developer и Express.sudo /opt/mssql/bin/mssql-conf setup
Внимание
Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.
По завершении настройки убедитесь в том, что служба работает.
systemctl status mssql-server
Если вы планируете удаленно подключиться, может потребоваться открыть TCP-порт SQL Server (по умолчанию 1433) в брандмауэре.
Примечание.
В SLES можно управлять брандмауэром,
firewalld
например. Установите его с помощьюsudo zypper install firewalld
, а затем запустите егоsudo systemctl start firewalld
. Добавьте правило брандмауэра сsudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
помощью, а затем перезагрузите брандмауэр,sudo firewall-cmd --reload
чтобы параметры вошли в силу.
В результате сервер SQL Server будет запущен на компьютере SLES и готов к использованию!
Отключение учетной записи SA в качестве рекомендации
При подключении к экземпляру SQL Server с помощью учетной записи системного администратора (sa
) в первый раз после установки важно выполнить эти действия, а затем немедленно отключить sa
учетную запись в качестве рекомендации по безопасности.
Создайте новое имя входа и сделайте его членом роли сервера sysadmin .
В зависимости от того, есть ли у вас контейнер или неконтейнерное развертывание, включите проверка подлинности Windows и создайте новое имя входа под управлением Windows и добавьте его в роль сервера sysadmin.
В противном случае создайте имя входа с помощью проверки подлинности SQL Server и добавьте его в роль сервера sysadmin .
Подключитесь к экземпляру SQL Server с помощью созданного имени входа.
sa
Отключите учетную запись, как рекомендуется для обеспечения безопасности.
Установка программ командной строки SQL Server
Чтобы создать базу данных, необходимо подключиться с помощью средства, которое позволяет выполнять инструкции Transact-SQL в SQL Server. Следующие действия по установке средств командной строки SQL Server: служебная программа sqlcmd и служебная программа BCP.
Чтобы установить mssql-tools18 на SUSE Linux Enterprise Server, выполните следующие действия.
Импортируйте ключ подписи пакета Майкрософт.
curl -O https://packages.microsoft.com/keys/microsoft.asc sudo rpm --import microsoft.asc
Добавьте репозиторий Microsoft SQL Server в Zypper.
Для SLES 15 используйте следующую команду:
sudo zypper ar https://packages.microsoft.com/config/sles/15/prod.repo
Для SLES 12 используйте следующую команду:
sudo zypper ar https://packages.microsoft.com/config/sles/12/prod.repo
Установите mssql-tools18 с пакетом разработчика unixODBC.
- Для SLES 15 используйте следующую команду:
sudo zypper install -y mssql-tools18 unixODBC-devel glibc-locale-base
- Для SLES 12 используйте следующую команду:
sudo zypper install -y mssql-tools18 unixODBC-devel
Чтобы обновить до последней версии mssql-tools18, выполните следующие команды:
sudo zypper refresh sudo zypper 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
Локальное подключение
В следующих шагах выполняется локальное подключение к новому экземпляру SQL Server с помощью sqlcmd.
Внимание
Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.
Запустите sqlcmd с параметрами имени вашего SQL Server (
-S
), имени пользователя (-U
) и пароля (-P
). В этом руководстве вы подключаетесь локально, поэтому имя сервера —localhost
это. Имя пользователя иsa
пароль — это пароль, который вы указали для учетнойsa
записи во время установки.sqlcmd -S localhost -U sa -P '<password>'
Примечание.
Более новые версии sqlcmd по умолчанию защищены. Дополнительные сведения о шифровании подключений см. в программе sqlcmd для Windows и подключении с помощью sqlcmd для Linux и macOS. Если подключение не выполнено, можно добавить параметр в sqlcmd, чтобы указать
-No
, что шифрование является необязательным, а не обязательным.Вы можете не указывать пароль в командной строке. В этом случае вы получите запрос на его ввод.
Если позже вы решите удаленно подключиться, укажите имя компьютера или IP-адрес параметра
-S
и убедитесь, что порт 1433 открыт на брандмауэре.Если все сработает должным образом, вы перейдете к приглашению команды sqlcmd:
1>
.Если произойдет сбой подключения, сначала попробуйте узнать проблему по сообщению об ошибке. Затем ознакомьтесь с рекомендациями по устранению неполадок с подключением.
Создание и запрос данных
В следующих разделах приведено пошаговое руководство по созданию базы данных, добавлению данных и запуску простого запроса с использованием sqlcmd.
Дополнительные сведения о написании инструкций и запросов Transact-SQL см. в руководстве по написанию инструкций Transact-SQL.
Создание базы данных
Выполните следующие шаги, чтобы создать базу данных TestDB
.
В приглашении команды sqlcmd вставьте следующую команду Transact-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.
Кроссплатформенные средства работы с данными
Помимо sqlcmd вы можете использовать следующие кроссплатформенные средства для управления SQL Server:
Средство | Description |
---|---|
Azure Data Studio | Кроссплатформенная служебная программа управления базами данных с графическим пользовательским интерфейсом. |
Visual Studio Code | Кроссплатформенный редактор кода с графическим пользовательским интерфейсом, позволяющий выполнять инструкции Transact-SQL в выражениях mssql. |
PowerShell Core | Кроссплатформенное средство для автоматизации и настройки на основе командлетов. |
mssql-cli | Кроссплатформенный интерфейс командной строки для выполнения команд Transact-SQL. |
Подключение из 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 на Linux
- Автоматическая установка: узнайте, как скриптировать установку без запросов
- Автономная установка. Узнайте, как вручную скачать пакеты для автономной установки
Ответы на часто задаваемые вопросы об SQL Server на Linux см. в этой статье.
Связанный контент
Примите участие в разработке документации по SQL
Знаете ли вы, что содержимое SQL можно изменить самостоятельно? Это не только улучшит нашу документацию, но и даст вам статус участника в создании этой страницы.
Дополнительные сведения см. в разделе Участие в работе над документацией по SQL Server.