ClickHouse client for Mac, Windows and Linux
A native ClickHouse client that understands ClickHouse rather than pretending it is a transactional database: exact wide integers, plans that show which parts and granules an index pruned, insights from the query log, and honest refusals where ClickHouse has no equivalent.
- Connects over
- ClickHouse's HTTP interface
- Default port
- 8123, or 8443 with TLS
- Sign-in
- ClickHouse user and password
- Paste a URL
- clickhouse://user:password@host:8123/database
What SQLly does for ClickHouse
Every SQLly tool that has a ClickHouse counterpart works against ClickHouse’s system tables. The ones that don’t - because ClickHouse has no transactions, no row-level updates or no index usage counters - say so instead of failing halfway.
Results that keep every digit
Results stream into the grid as ClickHouse sends them. Wide integers and decimals keep their exact digits, arrays, tuples and maps appear as JSON text, and a multi-statement script reports each result set or the rows written.
Streaming results βPlans that show index pruning
Estimated plans come from ClickHouse’s JSON EXPLAIN and show how many parts and granules each index pruned - the number that tells you whether your primary key and skipping indexes are earning their keep.
Live queries, with Kill
Activity Monitor lists what is running and can kill it, Cancel in a query tab stops the query on the server, and Query Insights reads the query log for top queries and recent failures.
Activity Monitor βStructure edits that respect MergeTree
The Table Structure Editor handles ADD, DROP, RENAME and MODIFY COLUMN and data-skipping indexes, and flags key changes for manual review. Data Transfer into ClickHouse creates MergeTree tables.
BACKUP, RESTORE and OPTIMIZE
Backup / Restore drives BACKUP and RESTORE DATABASE to the server’s backups disk, and the Maintenance menu runs OPTIMIZE TABLE β¦ FINAL to merge a table’s parts.
Users and grants, scripted
A read-only Security view shows ClickHouse users, roles and grants and scripts CREATE USER and GRANT statements for you to review and run - ClickHouse access control stays in SQL where it belongs.
Connect to ClickHouse
- Download SQLly for macOS, Windows or Linux from the download page and open it.
- Create a connection and pick ClickHouse. SQLly uses ClickHouse’s HTTP interface, so the port defaults to 8123 (use 8443 with TLS).
- Enter host, user, password and optionally a database, or paste a
clickhouse://user:password@host:8123/databaseURL. The password goes to your OS keychain. - Choose a TLS mode and, for a private server, an SSH tunnel, proxy or Kubernetes port-forward - they work exactly as they do for PostgreSQL and MySQL.
- Test, save and connect, then browse databases in the tree and reach the tools from the explorer’s Tools submenu or the command palette.
Every SQLly tool on ClickHouse
This is the same engine matrix the app uses to enable or disable its menus, so what you read here is what you get. Where a tool doesn’t apply to ClickHouse, the app says why - and so do we.
| Tool | ClickHouse |
|---|---|
| Explorer, IntelliSense and hover cards | Yes |
| Estimated execution plans | Yes EXPLAIN json = 1, indexes = 1: shows the parts and granules each index pruned. |
| Activity Monitor | Yes Running queries, with Kill. |
| Query Insights | Yes The query log: top queries and recent failures. |
| Server Dashboard | Yes |
| Disk Usage and Object Browser | Yes |
| Maintenance menu | Yes OPTIMIZE TABLE … FINAL. |
| Schema Compare and Schema History | Yes |
| Data Compare | Yes |
| Data Transfer | Yes Tables are created as MergeTree. |
| Test Data Generator | Yes |
| Table Structure Editor | Yes Columns and data-skipping indexes; key changes are flagged for manual review. |
| Security editor (users, roles, grants) | Partial A read-only view that scripts CREATE USER and GRANT statements. |
| Backup / Restore | Yes BACKUP / RESTORE DATABASE to the server's backups disk. |
| SSH tunnels, proxies and Kubernetes port-forward | Yes |
| Read-only connections | Yes |
| Edit rows in the results grid | No ClickHouse has no row-level UPDATE or DELETE; use ALTER TABLE … UPDATE / DELETE in a query tab. |
| Actual (executed) plans | No ClickHouse has no EXPLAIN ANALYZE; read a run's rows, bytes and memory in Query Insights. |
| Index Analyzer | No No index usage counters; read index pruning in an estimated plan. |
| Create and drop database dialogs | No Use CREATE DATABASE / DROP DATABASE in a query tab. |
| Procedure Mode | No Supports SQL Server and PostgreSQL only. |
| SQL Agent, Extended Events and guided designers | No SQL Server and Azure SQL only. |
| Auto-rollback safety wrap | No ClickHouse has no transactions, so SQLly refuses to run under the wrap. |
Questions about ClickHouse in SQLly
Which ClickHouse port does SQLly connect to?
SQLly talks to ClickHouse's HTTP interface: port 8123 by default, or 8443 with TLS. SSH tunnels, SOCKS and HTTP proxies, Kubernetes port-forwards and the four TLS modes work the same way they do for PostgreSQL and MySQL.
Can I edit ClickHouse rows in the results grid?
No. ClickHouse has no row-level UPDATE or DELETE, so in-grid row editing is not offered; change rows with ALTER TABLE … UPDATE or DELETE in a query tab. The Table Structure Editor does handle ADD, DROP, RENAME and MODIFY COLUMN and data-skipping indexes.
Can I see and stop running ClickHouse queries?
Yes. Activity Monitor lists running queries and can kill them, Cancel in a query tab stops the query on the server, and Query Insights reads the query log for top queries and recent failures.
Why does the auto-rollback setting not work on ClickHouse?
ClickHouse has no transactions, so a rolled-back wrap could not undo anything and every change would stick. With the setting on, SQLly refuses to run statements on a ClickHouse connection and says why, rather than giving a false sense of safety.
Read more
In the docs
Other databases
Bring your ClickHouse home to the pig
SQLly is free to start on macOS, Windows and Linux, with no account required.