SQL tools are the clients, editors, linters and engines developers use to write and run queries. Open-source options cover GUI database managers, command-line clients, SQL linting and embedded analytical engines, all without licence fees.
This page lists OSI-licensed tools verified on their repositories. pgAdmin and Adminer are omitted because their repository pages did not state a licence when we checked, so check them separately.
Tools, licences and pricing checked against vendor and repository pages on November 7, 2026.
What to look for
•Interface: desktop GUI, terminal client or library
Best for: Universal database GUI · Free, open source (Community); paid editions, See vendor pricing
DBeaver is a cross-platform database tool for developers, SQL users, DBAs and analysts. It supports over 100 databases out of the box and any database with a JDBC or ODBC driver.
Best for: Clean desktop SQL editor · Free Community Edition (GPL); paid premium, See vendor pricing
Beekeeper Studio is a desktop SQL editor and database manager for Linux, macOS and Windows supporting PostgreSQL, MySQL, SQLite and SQL Server, with a free Community Edition.
Best for: Windows-first MySQL and MariaDB administration · Free, open source
HeidiSQL is a graphical tool for browsing, editing and administering MariaDB, MySQL, PostgreSQL and SQLite. It is written in Delphi and can export structure and data.
Best for: SQL linting in CI and dbt projects · Free, open source
SQLFluff checks SQL for style and errors and can fix many issues automatically. It supports dozens of dialects and templating systems such as Jinja and dbt.
Best for: Local analytics and querying files with SQL · Free, open source
DuckDB is an in-process analytical database that runs inside an application without a server. It reads and writes CSV, Parquet and JSON and connects to other databases.
Best for: Universal terminal client · Free, open source
usql is a command-line client for many SQL and NoSQL databases, modelled on psql, with syntax highlighting, completion and data copying between databases.