Ubuntu 18.04 MSSQL Repos

Я счастлив видеть выпуск 18,04.

Моей сборке нужна способность соединиться с сервером MSSQL, работающим на Ubuntu 18.04 через PHP.

Имеет repo, выпущенный для mssql-server на этой версии Ubuntu?

2
задан 9 May 2018 в 20:49

1 ответ

https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu? view=sql-server-linux-2017 до сих пор только упоминает 16.04.

mssql-server пакет от repo там хорошо работает в Ubuntus до 17,10, но после 18.04 он больше не устанавливает из-за устаревших зависимостей.

Но мы можем все еще установить и выполнить его :-) Сначала мы добавляем repo:

$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
$ echo 'deb [arch=amd64] https://packages.microsoft.com/ubuntu/16.04/mssql-server-2017 xenial main' | sudo tee -a /etc/apt/sources.list.d/mssql-server.list

Затем мы устанавливаем зависимости:

$ sudo apt install openssl1.0 libcurl4 libjemalloc2 libc++1 libsss-nss-idmap0 libc++abi1
$ # Mark them as dependencies so they're autoremoved if you remove mssql-server:
$ sudo apt-mark auto openssl1.0 libcurl4 libjemalloc2 libc++1 libsss-nss-idmap0 libc++abi1

Затем мы исправляем список зависимости в .deb для определения openssl1.0 вместо openssl:

$ mkdir tmp && cd tmp
$ sudo apt download mssql-server
$ ar x mssql-server_14.0.3025.34-3_amd64.deb
$ emacs -Q control.tar.gz

В Emacs:

  1. нажмите файл control в списке файлов
  2. отредактируйте строку, запускающуюся с, "Зависит" для высказывания openssl1.0 вместо openssl (примечание: это упомянуло два места в той же строке),
  3. отредактируйте строку, запускающуюся с, "Зависит" для высказывания libjemalloc2 вместо libjemalloc1,
  4. затем нажмите Save и затем X слева от Save,
  5. затем также нажмите Save в списке файлов,
  6. затем выход (File→Quit).

Затем мы переупаковываем архив под новым именем и устанавливаем его:

$ # Note: order of arguments matters here:
$ ar rcs mssql-server_14.0.3025.34-3fixed_amd64.deb debian-binary control.tar.gz data.tar.xz
$ sudo dpkg -i mssql-server_14.0.3025.34-3fixed_amd64.deb

Теперь только продолжите от шага 4 (mssql-conf setup) из https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu? view=sql-server-linux-2017 и необходимо смочь протестировать соединение с, например. sqsh или tsql.


Править: У меня есть свой текущий сценарий для того, чтобы сделать это на Ubuntu 19.10 здесь: https://gist.github.com/unhammer/6bff7adabb98e581508c042dc1fb9914

3
ответ дан 2 December 2019 в 02:43

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

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