Forum Discussion
ODBC drivers for Ubuntu 22.04
It appears that the instructions for installing ODBC on Ubuntu 22.04 and Debian 11.
I also got the v17 driver working on Linux Mint 21.1 as follows:
sudo su
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl https://packages.microsoft.com/config/debian/11/prod.list > /etc/apt/sources.list.d/mssql-release.list
exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install -y msodbcsql17
# optional: for bcp and sqlcmd
sudo ACCEPT_EULA=Y apt-get install -y mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
To use v18, just change to line with msodbcsql17 to use msodbcsql18
- steve60Feb 23, 2023Copper Contributor
This is not working.
Ubunto 22.04 is using openssl 3. Microsoft doesn't seem to care about updating their drivers to support openSSL 3.
Currently they are only supporting openssl1 with ODBC driver 17.
We are currently exploring switching all our servers and clients data to PostgreSQL. That's approximately 300 clients data. The software is developed in house, so a switch from MS SQL will be a pain but it is do able. I know Microsoft doesn't care about this and never will, we are not big enough to matter to them. We are waiting till April first to see if there are any solutions from the linux community. It is the end of life for ubunto 20.04, as it will not be maintained any more. and all our servers will be upgraded to 22.04.
- Craig100Feb 23, 2023Copper ContributorYou are right, I'm beginning to wish MS hadn't bothered trying to be trendy and produce a Linux version of SQL Server. If they're not going to keep it up to date, it's totally irrelevant and a waste of effort. Sorry, but it just is. People don't just host on Linux servers, sum of us develop on Linux desktop machines too. No way are we going to put ourselves at risk just because MS can't produce software in a competent fashion. Hopefully they'll improve in time, but it's time we don't have. So we have to muck about with Docker as before and ignore the so called "SQL Server for Linux". I bet they withdraw it soon anyway.
- steve60Feb 24, 2023Copper Contributor
There are hacks to down grade Openssl 3 to V1 . but I don't see the logic in compromising one systems security for Microsoft.
If you are developing in Python and Django there you can import pymssql. This does not require any Microsoft drivers however it is no longer maintained and you do have to modify a bit of code to make it work. Microsof and Mac both need to just be honest and say "We have no interest in working with anyone else. If you don't like it leave" instead of pretending to support different OS half the time. There are so many Database options out there that support all OS platforms that there is no need to develop in Microsoft SQL server. As a developer I will always support platforms that are universal, It just makes my life easy.
They have one month to make a patch before we start switching all our clients over to postgress.
- Timothy_QuinnMar 24, 2023Copper Contributor
My test Mint 21 system (Ubuntu 22.04.x based) was blocked from being able to be updated.
When I did a `sudo apt-get upgrade`, It failed and I was prompted to run `sudo apt --fix-broken install` which when was run would also fail due to the odbc drivers.
I followed these instructions to remove the offending packages: https://superuser.com/a/1439244/247361
It took a few tries and I had to remove `unixodbc-common`, `libodbc2`, `libodbcinst2`, `odbcinst1debian2` before `sudo apt --fix-broken install` would run ok.
I'm in the process of upgrading my test VM and will add notes if I hit a wall with this driver again.
[Update] - Afetr updating and trying `sqlcmd` it failed with `sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Can't open lib 'ODBC Driver 17 for SQL Server' : file not found`. To fix, I had to remove `msodbcsql17` and then re-install along with mssql-tools.