carloscastilla - Fotolia

Manage Learn to apply best practices and optimize your operations.

SQL Server for Linux shows Microsoft changing with the times

SQL Server on Linux didn't come out of nowhere. The database's roots are in Unix, and Microsoft has been making a concerted effort to be less Windows-centric overall.

It wasn't all that long ago that a headline saying Microsoft would offer SQL Server for Linux would have been taken as an April Fool's joke; however, times have changed, and it was no joke when Scott Guthrie, executive vice president of Microsoft's Cloud and Enterprise division, officially announced in March that Microsoft would support SQL Server on Linux. In his blog, Guthrie wrote, "This will enable SQL Server to deliver a consistent data platform across Windows Server and Linux, as well as on premises and cloud."

Although not everyone remembers it, SQL Server actually has its roots in Unix. When original developer Sybase (now part of SAP) initially released its version of SQL Server in 1987, the product was a Unix database. Microsoft began joint development work with Sybase and then-prominent PC database developer Ashton-Tate in 1988, and the following year they released the 1.0 version of what became Microsoft SQL Server -- this time for IBM's OS/2 operating system, which Microsoft had helped develop. Microsoft ported SQL Server to Windows NT in 1992 and went its own way on development from then on.

Since that time, the SQL Server code base has evolved significantly. Microsoft made huge changes to the code in the SQL Server 7 and SQL Server 2005 releases, transforming the software from a departmental database to an enterprise data management platform. Despite all this, since the original code base came from Unix, moving SQL Server to Linux isn't as unreasonable as it might look at first.

What's behind SQL Server for Linux?

Microsoft's move to put SQL Server on Linux is fully in line with its recent embrace of open source software and CEO Satya Nadella's move away from Windows-centricity and increased focus on the cloud and mobile computing. Microsoft has also released versions of Office and its Cortana personal assistant software for iOS and Android; in another move to embrace iOS and Android applications, earlier this year, the company acquired mobile development vendor Xamarin. In the long run, the SQL Server for Linux release will probably be seen as a part of Microsoft's strategic shift toward its Azure cloud platform over Windows.

Microsoft has already announced support from Canonical, the commercial sponsor of the popular Ubuntu distribution of Linux, and rival Linux vendor Red Hat. In his March announcement, Guthrie wrote, "We are bringing the core relational database capabilities to preview today, and are targeting availability in mid-2017." In other words, the first release of SQL Server on Linux will consist of the relational database engine and support for transaction processing and data warehousing. The initial release is not expected to include other subsystems like SQL Server Analysis Services, Integration Services and Reporting Services.

Later in March, Takeshi Numoto, corporate vice president for cloud and enterprising marketing at Microsoft, wrote on the SQL Server Blog about some of the vendor's licensing plans for the Linux SQL Server offering. Takeshi indicated that customers who buy SQL Server per-core or per-server licenses will be able to use them on either Windows Server or Linux. Likewise, customers who purchase Microsoft's Software Assurance maintenance program will have the rights to future releases of SQL Server for Linux, as Microsoft makes them available.

SQL Server Linux support not entirely new

While it's true that in the past Microsoft has had a very Windows-centric approach to its server applications, it hasn't entirely disregarded Linux support. Microsoft currently offers a variety of different drivers that enable Linux, Java and other open source applications to access SQL Server:

  • Microsoft's Java Database Connectivity (JDBC) driver can connect Java applications to SQL Server, Azure SQL Database and Parallel Data Warehouse. Microsoft JDBC Driver for SQL Server is a freely available Type 4 JDBC driver; version 6.0 is available now as a preview, or users can download earlier 4.2, 4.1 and 4.0 releases.
  • Microsoft also offers an Open Database Connectivity (ODBC) driver for SQL Server on both Windows and Linux. A new Microsoft ODBC Driver 13 release is available for download, currently in preview. It supports Ubuntu in addition to the previously supported Red Hat Enterprise Linux and SUSE Linux. The preview driver also supports the use of SQL Server 2016's Always Encrypted security capability.
  • Open source drivers for Node.js, Python and Ruby can also be used to connect SQL Server to Linux systems.

SQL Server for Linux takes the database's support for open source technologies to a new level. And that's definitely not something to just laugh about.

Next Steps

Former Microsoft CEO Steve Ballmer backpedaled on calling Linux cancer

SQL Server on Linux makes open source vendors happy

Beta testers preview Microsoft's upcoming SQL Server 2016 release

SQL Server 2017 is set to provide Linux high availability options

Dig Deeper on Microsoft SQL Server Installation