Я установил sqlserver на основе документации Microsoft. Следующие команды выполняются правильно.
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"
sudo apt-get update
sudo apt-get install -y mssql-server
sudo /opt/mssql/bin/mssql-conf setup
systemctl status mssql-server
Но когда я пытаюсь установить инструменты командной строки SQL Server, следующая ошибка происходит.
sudo apt-get install mssql-tools unixodbc-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
mssql-tools : Depends: msodbcsql17 (>= 17.3.0.0) but it is not going
to be installed
Depends: msodbcsql17 (< 17.4.0.0) but it is not going to be
installed
E: Unable to correct problems, you have held broken packages.
Моей операционной системой является Linux Ubuntu 18.04.1 LTS
После поиска вокруг, я нашел требуемый пакет, он расположен на репозитории Microsoft Ubuntu 18.04 для установки пакета, необходимо добавить repo сначала.
Это установит msodbcsql17
это соответствует Ubuntu 18.04, открывает терминал и работает:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
echo "deb [arch=amd64] https://packages.microsoft.com/ubuntu/18.04/prod bionic main" | sudo tee /etc/apt/sources.list.d/mssql-release.list
sudo apt update
sudo apt install msodbcsql17
У меня была подобная проблема, но не то же. В моем случае ошибка была
can't open lib '/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.2.so.0.1' : file not found
, я удалял msodbc
и затем переустанавливал его. После некоторого исследования я должен был удалить msodbc17
и затем переустанавливаю.
sudo apt-get remove msodbcsql17
sudo apt-get install msodbcsql17 -y
В моем случае этого было недостаточно, и я был вынужден выполнить следующие команды:
sudo apt установить libodbc1
sudo apt install unixodbc
У меня была такая же проблема, но вышеуказанные решения мне не подошли. Итак, вот как я решил эту проблему.
sudo apt-get install -y libodbc1
sudo apt update
sudo apt install unixodbc
Следуя командам из microsoft docs
sudo su
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
Эта проблема была правильно решена в TechDirectArchive.
Решение: Обновите пакет msodbcsql17, выполнив следующую команду
Подробнее , смотрите ссылку ниже https://techdirectarchive.com/2020/06/22/error-installing-mssql-on-linux-unable-to-install-msodbcsql17-on-ubuntu/