Краткое руководство. Установка SQL Server и создание базы данных в SUSE Linux Enterprise Server

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

В этом кратком руководстве вы установите SQL Server 2017 или SQL Server 2019 в SUSE Linux Enterprise Server (SLES) версии 12. Затем вы подключитесь с помощью sqlcmd для создания первой базы данных и выполнения запросов.

В этом кратком руководстве вы установите SQL Server 2019 в SUSE Linux Enterprise Server (SLES) версии 12. Затем вы подключитесь с помощью sqlcmd для создания первой базы данных и выполнения запросов.

Важно!

SQL Server 2019 поддерживается в SUSE Enterprise Linux Server версии 12 с пакетом обновления 2, 3, 4 или 5 (SP2, SP3, SP4 или SP5).

Совет

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

Предварительные требования

Требуется компьютер, на котором установлена ОС SLES версии 12 с пакетом обновления 3, 4 или 5 (SP3, SP4 или SP5) и имеется по крайней мере 2 ГБ памяти. Должна использоваться файловая система XFS или EXT4. Другие файловые системы, например BTRFS, не поддерживаются.

Требуется компьютер, на котором установлена ОС SLES версии 12 с пакетом обновления 3, 4 или 5 (SP3, SP4 или SP5) и имеется по крайней мере 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, необходимо удалить старый репозиторий, прежде чем выполнять эти действия. Дополнительные сведения см. в статье Настройка репозиториев Linux для SQL Server 2017 и 2019.

Примечание

В настоящее время подсистема Windows для Linux для Windows 10 не поддерживается в качестве цели установки.

Сведения о других требованиях к системе см. в статье Требования к системе для SQL Server на Linux.

Установка SQL Server 2017

Чтобы настроить SQL Server 2017 в SLES, выполните следующие команды в терминале для установки пакета mssql-server:

  1. Скачайте файл конфигурации репозитория Microsoft SQL Server 2017 SLES:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2017.repo
    

    Совет

    Если вы хотите установить SQL Server 2019, необходимо зарегистрировать вместо этого репозиторий SQL Server 2019. Используйте следующую команду для установки SQL Server 2019:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2019.repo
    
  2. Обновите репозитории.

    sudo zypper --gpg-auto-import-keys refresh 
    

    Установите ключ подписывания пакета Майкрософт в системе, импортировав его с помощью следующей команды:

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Выполните следующие команды для установки SQL Server:

    sudo zypper install -y mssql-server
    
  4. Когда установка пакета завершится, выполните команду mssql-conf setup и следуйте указаниям, чтобы задать пароль системного администратора и выбрать выпуск.

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

    Совет

    Следующие выпуски SQL Server 2017 имеют бесплатные лицензии: Evaluation, Developer и Express.

    Примечание

    Для учетной записи системного администратора необходимо установить надежный пароль (минимальная длина — 8 символов; должен содержать строчные и прописные буквы, десятичные цифры и (или) символы, отличные от букв и цифр).

  5. По завершении настройки убедитесь в том, что служба работает.

    systemctl status mssql-server
    
  6. Если вы планируете подключаться удаленно, может потребоваться открыть в брандмауэре 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

Чтобы настроить SQL Server 2019 в SLES, выполните следующие команды в терминале для установки пакета mssql-server:

  1. Скачайте файл конфигурации репозитория Microsoft SQL Server 2019 SLES:

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/mssql-server-2019.repo
    
  2. Обновите репозитории.

    sudo zypper --gpg-auto-import-keys refresh 
    

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

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Выполните следующие команды для установки SQL Server:

    sudo zypper install -y mssql-server
    
  4. Когда установка пакета завершится, выполните команду mssql-conf setup и следуйте указаниям, чтобы задать пароль системного администратора и выбрать выпуск.

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

    Примечание

    Для учетной записи системного администратора необходимо установить надежный пароль (минимальная длина — 8 символов; должен содержать строчные и прописные буквы, десятичные цифры и (или) символы, отличные от букв и цифр).

  5. По завершении настройки убедитесь в том, что служба работает.

    systemctl status mssql-server
    
  6. Если вы планируете подключаться удаленно, может потребоваться открыть в брандмауэре TCP-порт SQL Server (по умолчанию 1433). Если вы используете брандмауэр SuSE, необходимо изменить файл конфигурации /etc/sysconfig/SuSEfirewall2. Измените запись FW_SERVICES_EXT_TCP, добавив номер порта SQL Server.

    FW_SERVICES_EXT_TCP="1433"
    

В результате сервер SQL Server 2019 будет запущен на компьютере SLES и готов к использованию!

Установка программ командной строки SQL Server

Чтобы создать базу данных, необходимо подключиться с помощью средства, которое позволяет выполнять инструкции Transact-SQL в SQL Server. Ниже приведены инструкции по установке программ командной строки SQL Server: sqlcmd и bcp.

  1. Добавьте репозиторий Microsoft SQL Server в Zypper.

    sudo zypper addrepo -fc https://packages.microsoft.com/config/sles/12/prod.repo 
    sudo zypper --gpg-auto-import-keys refresh
    
  2. Установите mssql-tools с помощью пакета разработчика unixODBC. Дополнительные сведения см. в разделе Установка драйвера Microsoft ODBC для SQL Server (Linux).

    sudo zypper install -y mssql-tools unixODBC-devel
    
  3. Для удобства добавьте путь /opt/mssql-tools/bin/ в переменную среды PATH. Это позволит запускать программы, не указывая полный путь. Выполните следующие команды, чтобы изменить переменную среды PATH как для сеансов входа в систему, так и для интерактивных сеансов и сеансов без входа в систему.

    echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
    echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
    source ~/.bashrc
    

Локальное подключение

В следующих шагах выполняется локальное подключение к новому экземпляру SQL Server с помощью sqlcmd.

  1. Запустите sqlcmd с параметрами имени вашего SQL Server (-S), имени пользователя (-U) и пароля (-P). В этом руководстве вы подключаетесь локально, поэтому имя сервера — localhost. Имя пользователя — SA, а пароль тот, что вы выбрали для учетной записи SA во время установки.

    sqlcmd -S localhost -U SA -P '<YourPassword>'
    

    Совет

    Вы можете не указывать пароль в командной строке. В этом случае вы получите запрос на его ввод.

    Совет

    Если вы в будущем захотите подключиться удаленно, укажите для параметра -S имя компьютера или IP-адрес и откройте в брандмауэре порт 1433.

  2. Если все сработает должным образом, вы перейдете к приглашению команды sqlcmd: 1>.

  3. Если произойдет сбой подключения, сначала попробуйте узнать проблему по сообщению об ошибке. Затем ознакомьтесь с рекомендациями по устранению неполадок с подключением.

Создание и запрос данных

В следующих разделах приведено пошаговое руководство по созданию базы данных, добавлению данных и запуску простого запроса с использованием sqlcmd.

Создание базы данных

Выполните следующие шаги, чтобы создать базу данных TestDB.

  1. В приглашении команды sqlcmd вставьте следующую команду Transact-SQL, чтобы создать тестовую базу данных:

    CREATE DATABASE TestDB
    
  2. В следующей строке напишите запрос, который должен вернуть имена всех баз данных на сервере:

    SELECT Name from sys.Databases
    
  3. Две предыдущие команды были выполнены не сразу. Необходимо ввести GO на новой строке, чтобы выполнить предыдущие команды:

    GO
    

Совет

Подробнее о написании инструкций и запросов на языке Transact-SQL см. учебник Tutorial: Writing Transact-SQL Statements.

Добавление данных

Теперь создайте таблицу Inventory и вставьте две новых строки.

  1. В приглашении команды sqlcmd переключите контекст на новую базу данных TestDB:

    USE TestDB
    
  2. Создайте таблицу Inventory:

    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
    
  3. Вставьте данные в новую таблицу:

    INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
    
  4. Введите GO, чтобы выполнить предыдущие команды:

    GO
    

Выбор данных

Теперь выполните запрос, чтобы вернуть данные из таблицы Inventory.

  1. В приглашении команды sqlcmd введите запрос, который должен вернуть из таблицы Inventory строки, где количество превышает 152:

    SELECT * FROM Inventory WHERE quantity > 152;
    
  2. Выполните команду:

    GO
    

Выход из приглашения команды sqlcmd

Чтобы завершить сеанс sqlcmd, введите QUIT:

QUIT

Оптимальные методы повышения производительности

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

Кроссплатформенные средства работы с данными

Помимо sqlcmd вы можете использовать следующие кроссплатформенные средства для управления SQL Server:

Средство Описание
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. Если у вас возникли проблемы с подключением из Windows, см. рекомендации по устранению неполадок с подключением.

Другие инструменты, которые запускаются в Windows, но подключаются к SQL Server на Linux:

Другие сценарии развертывания

По другим сценариям установки доступны следующие ресурсы.

Совет

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

Дальнейшие действия