Hacker News new | ask | show | jobs
by rsyring 2705 days ago
I can't believe how hard it is to find a good database client tool that runs on Linux. I spent hours on Sunday looking for something that worked as well as pgadmin3. I don't prefer these Java tools that force you to manage JDBC drivers and usually share dated and cluttered UIs. Plus, I can't stand having to manage connections to each database instead of to each server. Let me connect to the server and then select my dB.

My notes:

  - Lists
  - https://wiki.postgresql.org/wiki/PostgreSQL_Clients
  - https://wiki.postgresql.org/wiki/Community_Guide_to_PostgreSQL_GUI_Tools
  - Clients
  - Most clients are Java, which is a pain b/c
    - they require you to list the DB in the connection
    - JDBC drivers can not use a socket connection
    - UI isn’t great
  - Valentina Studio
    - Has free & pro ($199) versions
    - Was the easiest to get connected initially, but then found bug that showed it wasn’t using socket connection as expected.
  - Navicat
    - Linux version is a Wine app
  - RazorSQL ($100 / year)
    - Is a Java app
    - Not much different from SQL Workbench, just use that instead?
  - TeamSQL
    - Electron, AppImage
    - Wanted me to enter an email address just to use the software, became privacy concerned about how much stuff would get sent to their servers
  - DbVisualizer ($197, $69 renewal)
    - Java
    - Downloaded & tried it, typical java app
  - SQL Workbench/J (OSS)
    - Java
  - Datazenit
    - web based but still Java?
  - PgManage
    - too crude
  - JetBrains DataGrip ($199 / $159)
    - Java
  - PgAdmin3
    - has lots of errors when used with PostgreSQL 11
  - PgAdmin4
    - installed, couldn’t get past the splash screen which said it couldn’t find the application server
  - Sqlectron
    - Electron
    - Couldn’t get a DB connection to save
  - dbForge
    - Windows only
  - dbGlass
    - No longer developed
  - HeidiSQL
    - Windows only
  - DBeaver
    - OSS and enterprise version
10 comments

You can flip between postgres databases in dbeaver quite easily (dbeaver calls it changing the "active object"). I used to use pgadmin3 every day, and have found dbeaver to be much better, and about the same as DataGrip. Although some things still feel better in psql or pgcli.

The vast coverage of JDBC is probably a good reason so many tools use Java. I'm sure you wouldn't prefer they all used ODBC or DBI instead.

PopSQL (https://popsql.io) should give you the modern UI you're looking for. Although you will have to create a connection per database, unfortunately.
Just installed the DEB on 18.04.

Won't show more than a white screen because of "[Oracle] NJS-045: cannot load the oracledb add-on binary for Node.js 8.2.1 (linux, x64)" - this does not inspire confidence.

Website says "PostgreSQL, MySQL, BigQuery, SQL Server, Redshift, Snowflake, SQLite, Presto, Cassandra, Oracle, ODBC, and more on the way."

Despite being written in Java, DBeaver does let you connect to a server, then pick which database you wish to connect to.
HeidiSQL works fine with Wine.

DataGrip is fantastic and not expensive if you use other JetBrains products. It also manages its own JDBC drivers -- you don't need to install at the OS level.

Datagrip looks ugly on my gnome3 with 4k and 2.0 scaling. Fonts are way small. Also, it's a bit on the heavy side.
Absolutely. I only work in MySQL and dbeaver was the only tool that worked without a huge headache in Linux.
I have subscribed to this issue [1] of azuredatastudio (ex sqlopsstudio) in the hope that one day it will support more than SQL Server. I am not sure Microsoft would have any interest in supporting others SQL engine though. Visually the software looks really similar to VSCode by the way.

[1] https://github.com/Microsoft/azuredatastudio/issues/56

> PgAdmin4 > - installed, couldn’t get past the splash screen which said it couldn’t find the application server

That was my experience as well. pgAdmin 4 is such a shit show.

> JDBC drivers can not use a socket connection

As someone that has done lots of Java development you have lost me there, as JDBC drivers obviously do make use of network connections, usually TCP/IP sockets.

they are probably referring to unix sockets. I used dbeaver already and got stuck on this very problem.
Ah ok, I seldom see them being used though.
TCP-only is not as big a deal as it used to be. If network stack overhead dominates your db connection you have probably done something wrong.
Sorry, I meant Unix socket. They are the best setup for postgres connections on a dev machine imo.
For what it's with:

- Valentina Studio: support confirmed and fixed the bug in about a day. Waiting for the next release. Not crazy about some of their UI, but hopeful this will be my answer.

- DBeaver: going to give it a try

Run pgadmin4 on docker, save yourself the setup.

dpage/pgadmin4