I need to connect to a MS SQL Server database from my Ubuntu machine. Any client suggested? I found libmono-entityframework-sqlserver6.0-cil, will that work?

It doesn't sound like just a client:

Mono provides a complete CLR (Common Language Runtime) including compiler and runtime, which can produce and execute CIL (Common Intermediate Language) bytecode (aka assemblies), and a class library. . This package contains the EntityFramework.SqlServer library for CLI 4.0 which provides Microsoft SQL Server support.

That is maybe too much?

  • Do you need a client with a GUI? What do you need to do on the MS SQL Server database, browse the data in tables and issue SQL commands?
    – mguassa
    Commented Sep 2, 2015 at 21:11
  • @mguassa a GUI would be nice, but basically I need to send SQL commands, so queries and create and alter tables and schemas and so on Commented Sep 2, 2015 at 21:18

3 Answers 3


Thanks for your answers. Your suggestions sound good but they weren't as easy to start as what I used, which is DBeaver, a universal database tool for developers and database administrators.

  • Easy installation with .deb installer, ready to start in 1 minute
  • Easy to use
  • Free (GPL2), open-source and multi-platform
  • It supports MS SQL Server (as requested in the question) and other relational and NoSQL databases

Only feature I couldn't find until now: generate DDL scripts

Here's a general UI screenshot taken from its website:

enter image description here

UPDATE june 2016

Been using the tool for some months now and I'm very happy. I am now with version 3.7, and I can generate DDL scripts, which I was missing before. Furthermore, DBeaver also comes as eclipse plugin and I am using it directly from the IDE. Great


If Microsoft are providing a true SQL Server then just about any SQL client should be able to access it but a lot depends on what you need to do - admin tasks will often need more specialized tools.

Personally, for an SQL client - regardless of the server - I would start with python which you should already have and pymssql.

pymssql provides a Python DB-API (PEP-249) interface to MS SQL so anything that you build on top of it can work with another database if you change back-end in the future.

  • Lightweight
  • Customization Possible
  • Free
  • You can add access methods via various methods but for user exploration iPython is superb.

You can try SQuirreL SQL, the universal SQL client.

From the website:

SQuirreL SQL Client is a graphical Java program that will allow you to view the structure of a JDBC compliant database, browse the data in tables, issue SQL commands etc..

It's open source, and being written in Java it's also multi-platform, i.e. it's available for Linux as well.

According to the FAQ, MS SQL Server is in the list of the supported databases, as long as the proper driver is installed.

What's a driver?

A driver allows you to connect to a particular database (Oracle, Sybase, DB2, etc.) We cannot legally ship most drivers with SQuirreL (in the installer or from the update site) as they are proprietary and most database vendors require users to download them directly from their website.

In theory SQuirreL should work with any DBMS that has a JDBC 2.0 driver.

A few screenshots of the program:

SQuirreL SQL - drivers

SQuirreL SQL - object tree

SQuirreL SQL - code completion

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.