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

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

В этом кратком руководстве вы установите SQL Server 2017 в Ubuntu 16.04/18.04. Затем вы подключитесь с помощью sqlcmd для создания первой базы данных и выполнения запросов.

Совет

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

В этом кратком руководстве показано, как установить SQL Server 2019 в Ubuntu 16.04, 18.04 или 20.04. Затем вы подключитесь с помощью sqlcmd для создания первой базы данных и выполнения запросов.

Примечание

Ubuntu 20.04 поддерживается, начиная с SQL Server 2019 с накопительным пакетом обновления 20 (CU10).

Совет

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

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

Требуется компьютер, на котором установлена ОС Ubuntu 16.04 или 18.04 и имеется по крайней мере 2 ГБ памяти.

Чтобы установить Ubuntu 18.04 на собственный компьютер, перейдите на страницу http://releases.ubuntu.com/bionic/. Можно также создать виртуальные машины Ubuntu в Azure. См. статью Создание виртуальных машин Linux и управление ими с помощью Azure CLI.

Примечание

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

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

Примечание

Ubuntu 18.04 поддерживается, начиная с SQL Server 2017 с накопительным пакетом обновления 20 (CU20). Если вы хотите использовать инструкции, приведенные в этой статье, с Ubuntu 18.04, убедитесь, что используется правильный путь к репозиторию 18.04 вместо 16.04.

Если вы используете SQL Server с более ранней версией, конфигурация возможна с изменениями.

Требуется компьютер с установленной версией Ubuntu 16.04, 18.04 или 20.04 и минимум 2 ГБ памяти.

Чтобы установить Ubuntu 20.04 на свой компьютер, перейдите на страницу https://releases.ubuntu.com/20.04/. Можно также создать виртуальные машины Ubuntu в Azure. См. статью Создание виртуальных машин Linux и управление ими с помощью Azure CLI.

Примечание

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

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

Установка SQL Server

Примечание

Следующие команды для SQL Server 2017 ссылаются на репозиторий Ubuntu 18.04. Если вы используете Ubuntu 16.04, в приведенном ниже пути замените /ubuntu/18.04/ на /ubuntu/16.04/.

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

  1. Импортируйте открытые ключи GPG из репозитория:

    wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
    
  2. Зарегистрируйте репозиторий Ubuntu для Microsoft SQL Server:

    Для Ubuntu 16.04:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"
    

    Для Ubuntu 18.04:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2017.list)"
    

    Совет

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

    Для Ubuntu 16.04:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2019.list)"
    

    Для Ubuntu 18.04:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"
    
  3. Выполните следующие команды для установки SQL Server:

    sudo apt-get update
    sudo apt-get 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 --no-pager
    
  6. Если вы планируете подключаться удаленно, может потребоваться открыть в брандмауэре TCP-порт SQL Server (по умолчанию 1433).

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

Установка SQL Server

Примечание

Следующие команды для SQL Server 2019 ссылаются на репозиторий Ubuntu 20.04. Если вы используете Ubuntu 18.04 или 16.04, измените приведенный ниже путь на /ubuntu/18.04/ или /ubuntu/16.04/ вместо /ubuntu/20.04/.

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

  1. Импортируйте открытые ключи GPG из репозитория:

    wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
    
  2. Зарегистрируйте репозиторий Microsoft SQL Server Ubuntu для SQL Server 2019:

    Для Ubuntu 16.04:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2019.list)"
    

    Для Ubuntu 18.04:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"
    

    Для Ubuntu 20.04:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
    
  3. Выполните следующие команды для установки SQL Server:

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

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

    Примечание

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

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

    systemctl status mssql-server --no-pager
    
  6. Если вы планируете подключаться удаленно, может потребоваться открыть в брандмауэре TCP-порт SQL Server (по умолчанию 1433).

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

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

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

Чтобы установить mssql-tools в Ubuntu, выполните указанные ниже действия.

Примечание

По умолчанию CURL не установлен в Ubuntu. Чтобы установить CURL, выполните следующий код:

sudo apt-get update 
sudo apt install curl 
  1. Импортируйте открытые ключи GPG из репозитория.

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
    
  2. Зарегистрируйте репозиторий Ubuntu для Майкрософт.

    Для Ubuntu 16.04:

    curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
    

    Для Ubuntu 18.04:

    curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
    

    Для Ubuntu 20.04:

    curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
    
  3. Обновите список источников и выполните команду установки с помощью пакета разработчика unixODBC. Дополнительные сведения см. в разделе Установка драйвера Microsoft ODBC для SQL Server (Linux).

    sudo apt-get update 
    sudo apt-get install mssql-tools unixodbc-dev
    

    Примечание

    Чтобы произвести обновление до последней версии mssql-tools, выполните следующие команды:

    sudo apt-get update 
    sudo apt-get install mssql-tools 
    
  4. Необязательно: Добавьте путь /opt/mssql-tools/bin/ в переменную среды PATH в оболочке bash.

    Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках сеансов входа в систему, измените переменную среды PATH в файле ~/.bash_profile с помощью следующей команды:

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

    Чтобы программы sqlcmd и bcp были доступны из оболочки bash в рамках интерактивных сеансов и сеансов без входа в систему, измените переменную среды PATH в файле ~/.bashrc с помощью следующей команды:

    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 см. в этой статье.

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