Как установить MSSQL Server и/или инструменты для Linux на 16.04?

Вопрос или проблема

Этот пост был создан в попытке стать универсальным каноническим вопросом/ответом на вопросы “Как установить MSSQL Server” и “Как установить инструменты MSSQL Server”.

Я собираюсь настроить MS SQL Server для Linux и, возможно, его инструменты (на самом сервере или других системах), чтобы иметь возможность взаимодействовать с SQL Server. Как мне это сделать?

Этот ответ охватывает установку MSSQL Server и инструментов для любой системы 16.04. Он не охватывает решение с Docker для установки MSSQL Server на систему. Будет написан отдельный ответ для установки MSSQL Server через опцию Docker для SQL Server.

Здесь есть несколько различных компонентов только из пакетов Microsoft.

  1. mssql-server – Предварительная версия Microsoft SQL Server для Linux
  2. mssql-tools – команды sqlcmd и др. для взаимодействия с MSSQL Server.

Есть несколько зловещих предостережений:

  1. Вы должны использовать 16.04 для всех компонентов; он НЕ работает на более старых версиях.
  2. На данный момент доступны только 64-разрядные версии пакетов. Вы не сможете запустить mssql-server, а возможно, и инструменты тоже, если вы не на 64-разрядных системах.

Все команды ниже являются предложенными шагами от Microsoft. Я не рекомендую использовать некоторые из этих команд вне эти шагов ровно, из-за природы рисков безопасности, которые некоторые из процедур здесь вводят (например, вход в оболочку суперпользователя).


Шаги установки mssql-server (источник)

Эти шаги охватывают настройку MS SQL Server для публичной предварительной версии Linux. Этот и метод Docker – два метода для настройки MSSQL Server для Linux.

Предостережения:

  1. Вам необходимо иметь 64-разрядную систему для MSSQL Server.
  2. Вам нужно как минимум 4 ГБ оперативной памяти на системе для установки MSSQL Server.
  3. Вы должны использовать Ubuntu 16.04 для этого, в их репозитории в настоящее время нет других версий.

Чтобы установить пакет mssql-server на Ubuntu, выполните следующие шаги:

  1. Войдите в режим суперпользователя.

    sudo su
    
  2. Импортируйте публичные репозиторные GPG-ключи:

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

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"
    
  4. Выйдите из режима суперпользователя.

    exit
    
  5. Запустите следующие команды для установки SQL Server:

    sudo apt-get update
    sudo apt-get install -y mssql-server
    
  6. После завершения установки пакета, выполните скрипт настройки и следуйте инструкциям.

    sudo /opt/mssql/bin/mssql-conf setup
    
  7. После завершения настройки проверьте, что служба запущена:

    systemctl status mssql-server
    

Смотрите: Быстрый старт: Установите SQL Server и создайте базу данных на Ubuntu.


Шаги установки mssql-tools (источник)

Этот раздел охватывает настройку mssql-tools, который включает команду sqlcmd. Эти шаги необходимы для любых систем, в которых вы хотите использовать команду sqlcmd или другие утилиты от Microsoft на Linux для взаимодействия с MSSQL Server.

(Это не требуется для других библиотек Python для взаимодействия с MSSQL или других утилит, таких как DataGrip, которые могут взаимодействовать с серверами и т. д., которые не требуют пакета mssql-tools для работы.)

Предостережения:

  1. Я не нашел версии этого для не-64-разрядных систем. Возможно, вам потребуется 64-разрядная система, чтобы эти инструменты работали.
  2. Вы можете использовать инструменты только на 16.04 в настоящее время.
  1. Войдите в режим суперпользователя

    sudo su
    
  2. Импортируйте публичные репозиторные GPG-ключи:

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

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/prod.list)"
    
  4. Выйдите из режима суперпользователя:

    exit
    
  5. Обновите список источников и выполните команду установки:

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

Используя Docker (только amd64)

Также возможно запустить MSSQL Server на Ubuntu, используя Docker. Это можно сделать, внимательно следуя приведенным ниже шагам:

  1. Если вы используете Ubuntu 14.04 или любую другую версию, более старую, чем Xenial (16.04), вам необходимо установить более новую версию Docker, чем та, что предоставляют архивы.

    Если это так, следуйте инструкциям на этой странице.

    Если нет, просто выполните:

    sudo apt-get install docker.io
    
  2. Убедитесь, что вы можете подключиться к локальному демону Docker, используя:

    docker info
    

    Если вы получите ошибку, такую как Cannot connect to the Docker daemon., вам нужно добавить себя в группу docker:

    sudo usermod -a -G docker <USERNAME>
    

    …где <USERNAME> заменен на ваше имя пользователя. Вам нужно будет выйти из системы и войти в неё, чтобы изменения вступили в силу.

  3. Скачайте изображение MSSQL с Docker Hub:

    docker pull microsoft/mssql-server-linux
    
  4. Создайте каталог на хосте, который будет хранить данные из контейнера, и сохраните значение в переменной окружения для удобства:

    export DIR=/var/lib/mssql
    sudo mkdir $DIR
    
  5. Запустите контейнер:

    docker run \
        -d \
        --name mssql \
        -e 'ACCEPT_EULA=Y' \
        -e 'SA_PASSWORD=<PASSWORD>' \
        -p 1433:1433 \
        -v $DIR:/var/opt/mssql \
        microsoft/mssql-server-linux
    

    Замените <PASSWORD> на уникальное значение, которое будет использоваться для аутентификации позже.

  6. Проверьте, что контейнер запустился без ошибок:

    docker ps -af name=mssql
    

    Если в колонке STATUS отображается “Up …” под колонкой STATUS, значит, всё работает правильно. Если же отображается ошибка:

    CONTAINER ID ... STATUS ...
    ba79fa12fbf1 ... Exited (0) 3 seconds ago ...
    

    …то вы можете использовать docker logs mssql для получения дополнительной информации.

Чтобы подключиться к контейнеру из приложения, просто укажите порт 1433.

По умолчанию контейнер запускается, когда вы в первый раз run его. Вы можете остановить контейнер с помощью:

docker stop mssql

Чтобы удалить контейнер, сначала остановите его, а затем выполните:

docker rm mssql

Другие решения могут сейчас не работать (2024+) даже на этой старой версии Ubuntu.

Какой бы ни была ваша версия Ubuntu:

  1. сначала установите Docker (это не может быть описано в этом ответе, читайте документацию, но в основном это sudo apt install docker.io)
  2. выполните эту единственную команду:
docker run --rm -it --env PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/mssql-tools/bin mcr.microsoft.com/mssql-tools sqlcmd

Готово.

Объяснение:

Команда автоматически скачает это изображение Docker для вас, если оно отсутствует:

https://hub.docker.com/r/microsoft/mssql-tools

По некоторым причинам переменная $PATH кажется немного багнутой в этом контейнере, поэтому мне пришлось вручную установить её внутри контейнера, чтобы использовать sqlcmd или что бы то ни было другое, что вам нужно. В идеальном мире это была бы команда:

docker run --rm -it mcr.microsoft.com/mssql-tools sqlcmd

Но опять же, если это не работает, попробуйте первую.

Ответ или решение

Установка MSSQL Server и инструментов на Linux 16.04: Пошаговое руководство

Если вы планируете установить Microsoft SQL Server на Ubuntu 16.04, вы находитесь в правильном месте. Данная инструкция охватывает процесс установки как самого сервера MSSQL, так и инструментов взаимодействия с ним. Рассматриваемая версия поддерживает использование только 64-битной архитектуры и требует наличия достаточного объема оперативной памяти.

Условия для установки

  1. Операционная система: Обязательно используйте Ubuntu 16.04. Установка на более старые версии не поддерживается.
  2. 64-битная архитектура: На вашем компьютере должна быть установлена 64-битная версия ОС.
  3. Минимальные системные требования: Для установки MSSQL Server необходимо не менее 4 ГБ оперативной памяти.

Установка MSSQL Server

  1. Переключение в режим суперпользователя:

    sudo su
  2. Импортирование публичных ключей репозитория:

    curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
  3. Регистрация репозитория Microsoft SQL Server для Ubuntu:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"
  4. Выход из режима суперпользователя:

    exit
  5. Обновление списка пакетов и установка SQL Server:

    sudo apt-get update
    sudo apt-get install -y mssql-server
  6. Конфигурация SQL Server:
    После завершения установки выполните скрипт конфигурации:

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

    Следуйте инструкциям на экране для завершения конфигурации.

  7. Проверка статуса службы:
    Убедитесь, что сервис MSSQL Server запущен:

    systemctl status mssql-server

Установка инструментов MSSQL

MSSQL Tools включают команды, такие как sqlcmd, для взаимодействия с сервером. Чтобы установить инструменты, выполните следующие шаги:

  1. Переключение в режим суперпользователя:

    sudo su
  2. Импортирование публичных ключей репозитория:

    curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
  3. Регистрация репозитория инструментов MSSQL:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/prod.list)"
  4. Выход из режима суперпользователя:

    exit
  5. Обновление списка пакетов и установка инструментов:

    sudo apt-get update
    sudo apt-get install -y mssql-tools

Заключение

Установив Microsoft SQL Server и инструменты для работы с ним на вашем сервере Ubuntu 16.04, вы обеспечите свою среду для разработки и тестирования баз данных на платформе SQL Server. Убедитесь, что вы соблюдаете требования к системе и следуйте инструкциям точно, чтобы избежать неполадок.

Если у вас возникли дополнительные вопросы о процессе установки или необходимых конфигурациях, обратитесь к официальной документации Microsoft или форумам сообщества для решения конкретных проблем.

Оцените материал
Добавить комментарий

Капча загружается...