Preview Release of the SQL Server [C/C++] ODBC Driver 13 for Linux


Hi all, we are delighted to share the second early technical preview of the Microsoft ODBC Driver 13 for Linux –  (Ubuntu, RedHat). The new driver enables access to SQL Server, Azure SQL Database and Azure SQL DW from any C/C++ application.

The major highlight of this release is a native command line install experience (apt/yum), for RedHat 6.x, 7.x and Ubuntu 15.10, 16.04. With the native command line install experience, you can use the Microsoft ODBC Driver on OSX via Docker and VirtualBox.

Install the ODBC Driver for Linux on Ubuntu 15.10

sudo su
sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/mssql-ubuntu-preview/ wily main" > /etc/apt/sources.list.d/mssqlpreview.list'
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
apt-get update
apt-get install msodbcsql
apt-get install unixodbc-dev-utf16 #this step is optional but recommended*

Install the ODBC Driver for Linux on Ubuntu 16.04

sudo su
sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/mssql-ubuntu-test/ xenial main" > /etc/apt/sources.list.d/mssqlpreview.list'
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
apt-get update
apt-get install msodbcsql
apt-get install unixodbc-dev-utf16 #this step is optional but recommended*

Install the ODBC Driver for Linux on RedHat 6

sudo su
yum-config-manager --add-repo https://apt-mo.trafficmanager.net/yumrepos/mssql-rhel6-preview/
yum-config-manager --enable mssql-rhel6-preview
wget "http://aka.ms/msodbcrhelpublickey/dpgswdist.v1.asc"
rpm --import dpgswdist.v1.asc
yum remove unixodbc #to avoid conflicts during installation
yum update
yum install msodbcsql
yum install unixODBC-utf16-devel #this step is optional but recommended*

Install the ODBC Driver for Linux on RedHat 7

sudo su
yum-config-manager --add-repo https://apt-mo.trafficmanager.net/yumrepos/mssql-rhel7-preview/
yum-config-manager --enable mssql-rhel7-preview
wget "http://aka.ms/msodbcrhelpublickey/dpgswdist.v1.asc"
rpm --import dpgswdist.v1.asc
yum remove unixodbc #to avoid conflicts during installation
yum update
yum install msodbcsql
yum install unixODBC-utf16-devel #this step is optional but recommended*

*This package contains the development files (headers and libraries) for unixODBC, an implementation of the ODBC interface for Unix systems.You should install this package if you intend to develop C language applications which use ODBC, or to compile ODBC-using applications from source.

Try our Sample

Once you install the driver that runs on a supported Linux distro, you can use this C sample to connect to SQL Server/Azure SQL DB/Azure SQL DW. To download the sample and get started, follow these steps:

wget "https://raw.githubusercontent.com/Microsoft/sql-server-samples/master/samples/tutorials/c/linux/sample_c_linux.c"
gcc sample_c_linux.c -o sample_c_linux -lodbc -w #make sure you change the servername, username and password in the connections string
./sample_c_linux

If you installed the driver using the manual instructions found here, you will have to manually uninstall the ODBC Driver and the unixODBC Driver Manager to use the deb/rpm packages. If you have an questions, feel free to leave a comment below. 

You can find the latest bits on the Microsoft Linux Ubuntu repository and RedHat repository.  We provide limited support while in preview on our Issues page. As always, we welcome contributions/questions/issues of any kind. I’d like to thank everyone on behalf of the team for supporting us in our endeavors to provide you with this preview release. Happy programming!

Future Plans

Going forward we plan to expand SQL Server 16 Feature Support (example: Always Encrypted), improve test coverage, and fix bugs reported on our Issues page.

Meet Bhagdev (meetb@microsoft.com)
 


Comments (2)

  1. Jack Kwakman says:

    Dear Meet,

    For future reference.. Maybe you can add the following silent accept terms parameter in the docs:
    IACCEPTMSODBCSQLLICENSETERMS=YES apt-get -y install msodbcsql

    Searched the complete web for it… Can be very usefull in a Docker container.

    On the offical MS docs (https://msdn.microsoft.com/en-us/library/hh568454(v=sql.110).aspx) they state that is:
    for silent install use ACCEPT_EULA=Y apt-get install msodbcsql

    That is not true and does NOT work (at least in the 13.0 version).

    Kind regards,

    Jack Kwakman

    1. Meet Bhagdev says:

      Hi Jack, we have replaced IACCEPTMSODBCSQLLICENSETERMS=YES with ACCEPT_EULA=Y. Check out our latest release here: https://blogs.msdn.microsoft.com/sqlnativeclient/2016/10/20/odbc-driver-13-0-for-linux-released/

Skip to main content