Поделиться через


Краткое руководство. Установка 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:

  1. Скачайте файл конфигурации репозитория 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) этой статьи.

  2. Обновите репозитории.

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

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

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Перед установкой SQL Server и после регистрации и активации SUSE Linux Enterprise Server в Центре клиентов SUSE необходимо активировать модуль классических приложений и модуль средств разработки. Эти модули необходимы для некоторых зависимостей пакета SQL Server.

  4. Теперь вы готовы установить SQL Server. Выполните следующие команды для установки SQL Server:

    sudo zypper install -y mssql-server
    
  5. После завершения установки пакета запустите mssql-conf setup и следуйте инструкциям, чтобы задать sa пароль и выбрать выпуск. Напоминаем, что следующие выпуски SQL Server имеют бесплатные лицензии: Evaluation, Developer и Express.

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

    Внимание

    Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.

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

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

    FW_SERVICES_EXT_TCP="1433"
    

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

  1. Скачайте файл конфигурации репозитория 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) этой статьи.

  2. Обновите репозитории.

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

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

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Перед установкой SQL Server и после регистрации и активации SUSE Linux Enterprise Server в Центре клиентов SUSE необходимо активировать модуль классических приложений и модуль средств разработки. Эти модули необходимы для некоторых зависимостей пакета SQL Server.

  4. Теперь вы готовы установить SQL Server. Выполните следующие команды для установки SQL Server:

    sudo zypper install -y mssql-server
    
  5. После завершения установки пакета запустите mssql-conf setup и следуйте инструкциям, чтобы задать sa пароль и выбрать выпуск. Напоминаем, что следующие выпуски SQL Server имеют бесплатные лицензии: Evaluation, Developer и Express.

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

    Внимание

    Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.

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

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

  1. Скачайте файл конфигурации репозитория 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) в этой статье.

  2. Обновите репозитории.

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

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

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Перед установкой SQL Server и после регистрации и активации SUSE Linux Enterprise Server в Центре клиентов SUSE необходимо активировать модуль классических приложений и модуль средств разработки. Эти модули необходимы для некоторых зависимостей пакета SQL Server.

  4. Теперь вы готовы установить SQL Server. Выполните следующие команды для установки SQL Server:

    sudo zypper install -y mssql-server
    
  5. После завершения установки пакета запустите mssql-conf setup и следуйте инструкциям, чтобы задать sa пароль и выбрать выпуск. Напоминаем, что следующие выпуски SQL Server имеют бесплатные лицензии: Evaluation, Developer и Express.

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

    Внимание

    Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.

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

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

  1. Создайте новое имя входа и сделайте его членом роли сервера sysadmin .

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

  3. sa Отключите учетную запись, как рекомендуется для обеспечения безопасности.

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

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

Чтобы установить mssql-tools18 на SUSE Linux Enterprise Server, выполните следующие действия.

  1. Импортируйте ключ подписи пакета Майкрософт.

    curl -O https://packages.microsoft.com/keys/microsoft.asc
    sudo rpm --import microsoft.asc
    
  2. Добавьте репозиторий 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
      
  3. Установите 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
    
  4. Необязательно: Добавьте /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 для интерактивных или не-login сеансов, измените PATH в файле ~/.bashrc с помощью следующей команды:

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

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

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

Внимание

Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.

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

    sqlcmd -S localhost -U sa -P '<password>'
    

    Примечание.

    Более новые версии sqlcmd по умолчанию защищены. Для получения дополнительной информации о шифровании подключений, см. утилиту sqlcmd для Windows и подключение с помощью sqlcmd для Linux и macOS. Если подключение не выполнено, можно добавить параметр -No, чтобы указать, что шифрование является необязательным, а не обязательным.

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

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

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

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

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

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

Дополнительные сведения о написании инструкций и запросов Transact-SQL см. в руководстве по написанию инструкций Transact-SQL.

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

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

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

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

    SELECT Name
    FROM sys.databases;
    
  3. Предыдущие две команды не выполняются немедленно. Необходимо ввести GO на новой строке, чтобы выполнить предыдущие команды:

    GO
    

Вставка данных

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

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

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

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

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

    GO
    

Выбор данных

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

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

    SELECT *
    FROM dbo.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 на компьютере с SQL Server. Если у вас возникли проблемы с подключением из Windows, см. рекомендации по устранению неполадок с подключением.

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

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

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

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

Примите участие в разработке документации по SQL

Знаете ли вы, что содержимое SQL можно изменить самостоятельно? Это не только улучшит нашу документацию, но и даст вам статус участника в создании этой страницы.

Дополнительные сведения см. в разделе Участие в работе над документацией по SQL Server.