Как установить MS SQL для Ubuntu 18.04 LTS?

Я посмотрел в интернете, но все шаги по установке касались версии 16.04. Это доступно еще 18.04? Если да, то как?

8
задан 5 May 2018 в 23:22

5 ответов

Microsoft еще не обеспечивает официальный mssql-сервер для 18,04 (05-12-2018), для тестирования только можно попробовать это обходное решение (от меня).

Обходное решение для установки SQL Server Microsoft (mssql) на Ubuntu

ПРЕДУПРЕЖДЕНИЕ: ДЛЯ ТЕСТИРОВАНИЯ ТОЛЬКО

  1. Загрузите последний пакет mssql-server_14.0.3025.34-3_amd64.deb с https://packages.microsoft.com/ubuntu/16.04/mssql-server-2017/pool/main/m/mssql-server/

  2. Каталоги изменения

    cd ${HOME} && mkdir -p tmp/mssql/newpkg/DEBIAN/ && cd tmp/mssql
    wget https://packages.microsoft.com/ubuntu/16.04/mssql-server-2017/pool/main/m/mssql-server/mssql-server_14.0.3025.34-3_amd64.deb
    
  3. Распаковать

    dpkg-deb -x mssql-server_14.0.3025.34-3_amd64.deb newpkg/
    dpkg-deb -e mssql-server_14.0.3025.34-3_amd64.deb newpkg/DEBIAN/
    
  4. Изменить

    sed -i -e 's#openssl (<= 1.1.0)#openssl (<= 1.1.1)#g' newpkg/DEBIAN/control
    cat newpkg/DEBIAN/control | grep openssl
    
  5. Перепакет

    dpkg-deb -b newpkg/ 18.04-mssql-server_14.0.3025.34-3_amd64_.deb
    
  6. Сначала попробуйте, это перестанет работать для зависимостей

    sudo dpkg -i 18.04-mssql-server_14.0.3025.34-3_amd64_.deb
    
  7. Зависимости от установки

    sudo apt install -f
    
  8. Вторая попытка, это должно быть сделано

    sudo dpkg -i 18.04-mssql-server_14.0.3025.34-3_amd64_.deb
    
  9. Следуйте сообщениям от пакета для установки mssql сервера

Поиск и устранение неисправностей

Каталог базы данных /var/opt/mssql не должен ставить zfs набор данных, если Вы используете zfs, создаете zvol и формат как ext4/xfs для него.

Ошибка: "Поток сбора дампа [4404] исключение хита [6]. Выход".
Зафиксируйте: sudo usermod -a -G disk mssql
Причина: пользователь mssql не может получить доступ к zvol.

Ссылки:

9
ответ дан 23 November 2019 в 05:23

Так, версии ca-certificates и openssl если Ubuntu 18.04 на самом деле хорошо работают для mssql-server. По-видимому, это отклоняет openssh потому что 18.04's версия 1.1.0g-2ubuntu4 технически 'выше', чем mssql-serverпотребованный <=1.1.0 (и я думал бы, что они должны были использовать <1.1.1 так как это все еще блокирует Вас к a 1.1.0 вариант при обеспечении определенных для распределения версий пакета, которые являются чем-то, которое необходимо абсолютно ожидать сталкиваться, но это ни здесь, ни там.)

The Fix

  1. Зависимости от установки
    sudo apt-get install libunwind8 libnuma1 libc6 adduser libjemalloc1 libc++1 gdb debconf libcurl3 hostname openssl python libgssapi-krb5-2 libsss-nss-idmap0 gawk sed
    (Я полностью понимаю, что у Вас, вероятно, есть большинство из них уже установленных, это просто все требуемые зависимости.)
  2. Загрузите пакет
    apt-get download mssql-server
  3. Установка силы
    sudo dpkg --force-depends -i mssql-server_14.0.3025.34-3.deb
  4. Удалите загруженный .deb файл
    rm mssql-server_14.0.3025.34-3_amd64.deb
  5. На данном этапе выполнение любой способной команды заставит это (безопасно) жаловаться, что mssql-сервер не встретил зависимости и дает Вам команду работать: sudo apt --fix-broken install
    НЕ ДЕЛАЙТЕ ЭТОГО. ВЫ ПОТЕРЯЕТЕ ВСЕ, ЧТО ВЫ ПРОСТО СДЕЛАЛИ.

    Если Вы действительно хотите ту ошибку уйти, возобновить шаг 5, иначе просто проигнорировать его, и Вы сделаны.

  6. Убедите dpkg, что все хорошо
    1. sudo nano /var/lib/dpkg/status
       Ваш предпочтительный редактор хорошо также
    2. Найдите запись для mssql-сервера (для нано, это - Ctrl-W, не Ctrl-F),
    3. Изменитесь, зависит строка от

      ...hostname, openssl (>= 1.0.1), openssl (<= 1.1.0), python (<= 2.7.0)...

      кому:

      ...hostname, openssl (>= 1.0.1), openssl (< 1.1.1), python (<= 2.7.0)...

Если Вы насильственно установили старые версии ca-certificates и openssl добираться mssql-server для установки можно насильственно обновить их apt-get install ca-certificates openssl. Это удалит mssql-сервер (но Ваша конфигурация и базы данных должны быть оставлены в покое). Затем можно следовать моим инструкциям.

Это должно избежать Вас имеющий необходимость иметь дело со стычкой переупаковочных вещей. Вы обмениваете это на подшучивание над dpkg, но выполнение его, этот путь будет, вероятно (я допускаю это, не основано ни на каком исследовании), помогают обновить, когда официальные 18,04 пакетов выходят, так как Вы стараетесь не создавать и использовать неофициальный пакет, и обновить до официального пакета очистило бы изменения, которые мы внесли автоматически.

5
ответ дан 23 November 2019 в 05:23

Веб-сайт SQL Micrsoft обновился в апреле 2018 и показывает Ubuntu 16.04 большей частью в настоящее время поддерживаемой версии. Я ожидал бы до 26 июля 2018, когда Ubuntu 18.04.1 LTS выпущена для ожидания поддержки со стороны Microsoft.

Вместо того, чтобы платить за SQL Microsoft Вы могли попробовать бесплатную версию MySQL, который уже поддерживает Ubuntu 18.04.

2
ответ дан 23 November 2019 в 05:23

Microsoft обновила SQL Server 2017 для Linux, и теперь она может быть установлена в Ubuntu 18.04, но Они рекомендуют для разработки только.

Для получения дополнительной информации проверьте следующее сообщение в блоге Microsoft: Установка SQL Server 2017 для Linux на Ubuntu 18.04 LTS

5
ответ дан 23 November 2019 в 05:23

При использовании Ubuntu 18.10, необходимо будет пересмотреть ответ David Mortals немного путем добавления следующего к шагу 4:

sed -i -e 's#libjemalloc1#libjemalloc2#g' newpkg/DEBIAN/control

Это принимает это libjemalloc2 обратно совместимо с libjemalloc1 и до сих пор на моей dev машине это, кажется, хорошо работает.

0
ответ дан 23 November 2019 в 05:23

Другие вопросы по тегам:

Похожие вопросы: