Microsoft ODBC Driver for SQL Server on Linux
The ODBC driver for SQL Server allows native applications (C/C++) running on Linux to connect to SQL Server 2008, SQL Server 2008 R2, SQL Server 2012, and Microsoft Azure SQL Database. With Microsoft ODBC Driver 13 (Preview) for SQL Server, SQL Server 2014 and SQL Server 2016 (Preview), are now also supported.
This documentation describes the following versions of the Microsoft ODBC Driver for SQL Server on Linux:
Microsoft ODBC Driver 13 (Preview) for SQL Server
Microsoft ODBC Driver 11 for SQL Server
Support for the recently released Always Encrypted feature in SQL Server 2016 (Preview), a new security feature that ensures sensitive data is never seen in plaintext in a SQL Server instance. Always Encrypted works by transparently encrypting the data in the application, so that SQL Server will only handle the encrypted data and not plaintext values. Even if the SQL instance or the host machine is compromised, all an attacker can get is ciphertext of sensitive data.. For details see Using Always Encrypted with the Linux ODBC Driver.
Ubuntu is now supported, along with Red Hat and SUSE. You can download for Ubuntu here: Microsoft ODBC Driver 13 (Preview) for SQL Server - Ubuntu Linux.
unixODBC Driver Manager 2.3.1 Support
For details on Driver Manager Support see Installing the Driver Manager.
The ODBC driver on SUSE Linux (Preview) supports 64-bit SUSE Linux Enterprise 11 Service Pack 2. For more information, see System Requirements.
The ODBC driver on Linux supports AlwaysOn Availability Groups. For more information, see ODBC Driver on Linux Support for High Availability, Disaster Recovery.
The ODBC driver on Linux supports connections to Microsoft Azure SQL Database. For more information, see How to: Connect to Windows Azure SQL Database Using ODBC.
The driver supports tracing of ODBC API call entry and exit. For more information, see Data Access Tracing with the ODBC Driver on Linux.
The -l option has been added to bcp. For more information, see Connecting with bcp.
The following are answers to questions about the ODBC Driver for SQL Server on Linux.
For more information about the driver, see the Microsoft ODBC driver team blog.
- How do existing ODBC applications on Linux work with the driver?
You should be able to compile and run the ODBC applications that you have been compiling and running on Linux using other drivers.
- Which features of SQL Server 2012 does this version of the driver support?
The ODBC driver on Linux supports all server features in SQL Server 2012 except LocalDB. For more information about SQL Server supported features, see Programming Guidelines.
- Does the driver support Kerberos authentication?
Yes, for more information, see Using Integrated Authentication.
- Which Unicode encoding should an application use?
UTF-8 for SQL_CHAR data and UTF-16 for SQL_WCHAR data.
- Are there ODBC samples that I can download and run with the driver to experiment with it or evaluate it?
See Use Existing MSDN C++ ODBC Samples for the ODBC Driver on Linux for a sample.
- Is the ODBC driver on Linux open source?
No, the ODBC driver on Linux is not an open source product.
- Does the ODBC driver on Linux mean that a future version of SQL Server will run on Linux?
There are no plans to support SQL Server on Linux.
- Why must users build the UnixODBC Driver Manager?
The UnixODBC Driver Manager package that ships with most Linux distributions is not compatible with this release of the Microsoft ODBC Driver for SQL Server. For information on how to install version 2.3.0 or 2.3.1 of the unixODBC Driver Manager, see Installing the Driver Manager.
- What are the differences between the Microsoft SQL Server ODBC Driver 1.0 for Linux and the Microsoft ODBC Driver 13 (Preview) or 11 for SQL Server? Are they the same product?
The Microsoft ODBC Driver 11 for SQL Server is the new name for the driver for Linux and Windows. If you are using the Microsoft SQL Server ODBC Driver 1.0 for Linux, you should upgrade to the Microsoft ODBC Driver 13 (Preview) or 11 for SQL Server.
The documentation for the ODBC driver on Linux includes: