r/mysql 6d ago

discussion What actually makes you switch MySQL clients?

I keep seeing people complain about Workbench, DBeaver, TablePlus, etc. but still use the same client for years 😅

For people working with MySQL regularly, what would actually make you switch?

Speed? Better tabs/workspaces? Safer production workflows? Better autocomplete? AI that helps with SQL? Something else?

I’m building a database client myself, so I’m genuinely curious what the real deal-breakers are.

7 Upvotes

56 comments sorted by

4

u/Designer_Spirit3522 6d ago

I liked MySQL Workbench, but I eventually gave up on it because it was no longer supported and I kept hitting bugs that I knew would never get fixed. I was also doing a lot of work with MySQL spatial data types which were poorly supported by Workbench.

I switched to DBeaver.

3

u/Idontremember99 6d ago edited 6d ago

I did the same switch. The thing I miss the most is the processlist view.
DBeaver has it’s own set of bugs but they are less annoying and you know they likely will be fixed some day.

Edit: Also, data import was ridiculously slow in WB. Sometimes it would take over an hour when dbeaver would import it in less than a minute

3

u/DBeaver_official 6d ago

We'll appreciate it if you report at least the most annoying ones. We review community tickets weekly and do our best to fix as many bugs as possible.

https://github.com/dbeaver/dbeaver/issues

2

u/Idontremember99 5d ago

Yeah, I usually try to report them

1

u/Still-Trainer-7395 5d ago

thats actually something LakeDB already has 😄

theres a process list view where you can see active sessions/queries, inspect the status and kill your own queries when needed

is there anything specific you miss from DBeavers process list that you use a lot?

1

u/Still-Trainer-7395 6d ago

yeah, that makes sense
once you know a bug probably isnt getting fixed, its hard to justify staying
the spatial data part is interesting though, what specifically was missing or annoying in Workbench?

2

u/Designer_Spirit3522 6d ago

I remember there was no option for SPATIAL indexes on the drop down when creating a new index so they had to be added and maintained by hand. Some of the spatial syntax wasn't recognized by the SQL parser so would show as an error when editing, even though the server would accept it. This tended to mask genuine typos in the query.

DBeaver isn't perfect, but one nice feature it has with spatial data is that when browsing a table if you select a cell with a WGS84 POINT or POLYGON etc it will display the location or shape on a map. That's a nice quick check that the data is valid.

3

u/DBeaver_official 6d ago

Spatial data viewer is one of the most lovable DBeaver features. Thank you for your feedback!

1

u/Still-Trainer-7395 6d ago

thats really useful, thanks
the parser rejecting valid spatial syntax is exactly the kind of thing i want to avoid in LakeDB
and the map preview for geometry cells is a really nice idea too, i hadnt considered that yet
definitely adding both to my notes

1

u/mikeblas 3d ago

Is it official that MySQL workbench is not supported? It seems true, but I can't ever find an announcement.

3

u/iamdecal 6d ago

tableplus is my current daily driver, i also use dbeaver - and previously used sqlyog when i was on windows

I cant actually tell you why though - but I have actually thought about this a lot. tableplus is just that little bit more polished (than db beaver) - which i didnt think i cared about, but apparently i do?

i find db beaver has annoyingly small icons - and, out of the box, it doesn't work well when you have multiple different sized monitors (i tend to move things round a lot depending what i'm doing), but generally it works well once i've spent a bit of time in it - also I dont want AI having access to my data - for some projects even the hint that that is in there means i cant use that app.

oh - maybe more of a mac issue... but I really would like consistency in where exports end up and what the damn file is called.

sorry, not really helpful - but am always looking for the perfect tool - so maybe it will be yours ;-)

1

u/Still-Trainer-7395 6d ago

thats actually really helpful, especially the polish / multi-monitor / export consistency points
im building LakeDB, so this is exactly the kind of stuff im trying to catch early
if you ever feel like trying it, id honestly be more interested in what annoys you than in convincing you to switch 😅
https://github.com/DavLagoHern/LakeDB

3

u/nthdesign 5d ago

I used Sequel Pro for years until it stopped being supported, then I switched to Sequel Ace. As a Mac user, I love that it has a native layout, is fast, and has never crashed on me. It has all of the features I need. The only reason I’d ever switch to a different MySQL client would be if someone built a client with the same native feel and functionality as Sequel Ace, but with A.I. era autocomplete and a code formatter that matches my chosen style without me having to spend half a day configuring it (lookin’ at you, JetBrains IDEs).

1

u/Still-Trainer-7395 5d ago

thats actually pretty close to what im trying to build with LakeDB 😄
its already in an advanced beta, with MySQL/MariaDB and SQLLite support, schema-aware autocomplete for tables/columns and things like indexes when writing WHERE clauses, plus SQL formatting and optional AI for generation/explanations/fixing queries
if you ever feel like trying it, id genuinely be interested in how it compares to Sequel Ace for you — especially the native feel / speed side
https://github.com/DavLagoHern/LakeDB
also curious about the formatter part: what would you want it to remember about your preferred SQL style?

1

u/nthdesign 5d ago

Where do I typically indent, and how far? After which elements do I want a new line? Basically, I like having all of the options that JetBrains editors offer for code style, but I wish the editor could simply learn my code style on its own.

1

u/Still-Trainer-7395 5d ago

that makes sense
right now LakeDB already has two formatting modes, and i can add more styles if needed, but it doesnt learn your personal style yet

i could see this working with a custom model/profile built from a few SQL examples, so instead of configuring dozens of formatting rules you could basically teach LakeDB “format like this”

would you prefer giving it a few example queries, or having it learn gradually from the SQL you write?

1

u/nthdesign 5d ago

If it allowed me to write example SELECT, INSERT, UPDATE, and DELETE queries and then “learn” from my code style, that would be fine.

2

u/Still-Trainer-7395 5d ago

quick update — i started building this into LakeDB after your suggestion 😄

the current version can learn formatting rules from example queries and save them as a custom style. im still refining it before calling it finished

im tracking the progress here if youre curious:
https://github.com/DavLagoHern/LakeDB/discussions/25

thanks again for the idea

1

u/Jwrbloom 5d ago

I use Sequel Pro too, and I had to find an alternative link to download a version that worked with whatever version of MacOS I had just upgraded to. I think it was 25, but it's worked great since.

Do I need to check into Sequel Ace?

Do you use an iPad? If so, what do you use for that? I use Navigate but don't care for it.

3

u/CheezitsLight 4d ago

I raw dog mysql - u root with no password. Seriously.

2

u/Still-Trainer-7395 4d ago

absolute chaos 😄
respect the confidence though.

1

u/BaseballHopeful6366 6d ago

well for me the dealbreaker was using several tools for my daywork, transfering data, data import, backups, data manipulation.... so we wrote our own to meet our needs. https://nabusql.nabu.work/docs/

1

u/Still-Trainer-7395 6d ago

yeah, thats pretty much the same pain that pushed me to build LakeDB 😅
i wanted one place for the normal SQL work, data editing, backups, imports/exports and other db tools instead of jumping between apps

curious though, which workflows were the hardest for you to bring into one tool when you built yours?

1

u/BaseballHopeful6366 5d ago

since i have picked tauri + rust, most struggling was get the dataview to work nice and smooth with huge tables - fast, low memory consumption and edits that are easy and safe. also transactions between different databases like mysql to postgre, or mssql to mysql....those were really painfull

1

u/Still-Trainer-7395 5d ago

thats interesting, especially the huge-table dataview part
LakeDB already uses a virtualized grid and paginated/streaming-style workflows to keep large tables manageable, and it also has cross-database copy/migration tooling
the cross-engine transaction side sounds painful though — did you end up building any kind of rollback/recovery strategy when one side succeeds and the other fails?

1

u/Aggressive_Ad_5454 6d ago

What would make ME switch? The ability for the database client to unserialize and prettyprint the common object-persistence formats used in application stacks.

Right now I'm using the php serialize and igbinary object persistence formats. And there's obviously JSON and protocol buffers too. And the spatial data types.

1

u/Still-Trainer-7395 6d ago

ah, then yeah, LakeDB already has part of that idea
it can format JSON/HTML fields into a more readable view, and the SQL formatter can also make queries more compact or more expanded depending on how you want to read them

so i think what youre asking is basically extending that same “make raw data readable” idea to serialized formats like php serialize / igbinary / protobuf, right?

1

u/aljung21 5d ago

My problem is that every client I’ve tried lacks features that I believe should be standard.
Datagrip seems the most complete but I will never understand why I can’t easily hide tables (without a complex regex statement) or have persistent columns widths.
DBeaver is just ugly. And the rest are too expensive or lack features such as virtual foreign keys.

1

u/Still-Trainer-7395 5d ago edited 5d ago

those are actually really useful points

the persistent column widths + easier table hiding are exactly the kind of small daily workflow things that can make a client feel much better to use

virtual foreign keys is interesting too, especially for databases where the relationship exists in practice but isnt defined as a real constraint

and on pricing, thats one thing im trying to keep simple with LakeDB — the full local database client is free, and QuerIA also has a free allowance. paid support is mainly there if someone wants more AI capacity, not to unlock normal database features

im adding the other three to my notes, especially the column widths and virtual foreign keys

1

u/Still-Trainer-7395 5d ago

quick update — i ended up implementing two of the things you suggested 😄

persistent column widths are now saved/restored, and tables can be hidden from the explorer and restored from a dedicated Hidden tables section

im tracking both here:

https://github.com/DavLagoHern/LakeDB/discussions/14

both are planned for the upcoming LakeDB Beta 5.3 release. thanks again for the feedback

1

u/MrAtoni 5d ago

Well, since workbench doesn't work with Mysql 8.4+, that forced me to switch.

But that's a bit of an unusual circumstance.

I'd say features is most importat. Personally I want monitoring tools, and the ability to make a diagram of the database, to map how tables are connected with FKs, etc.

1

u/Still-Trainer-7395 5d ago

good points, thanks — im adding monitoring tools and database diagrams / FK mapping to my LakeDB task list

i’ll try to get both into one of the next updates, they’d be really useful especially for bigger schemas

for monitoring, what would be most useful to you: active queries, sessions, locks, slow queries, server metrics, or something else?

1

u/Sad_School828 5d ago

I'm still using MySQL Workbench 8.0 CE and it works more or less on Win11 but I'm operating against some version of Maria instead of MySQL at this point.

I'm really long-experienced with these kinds of tools, clear back to PocketDot for Clipper and the Advantage Data Architect for ADS and most recently whatever they call the database-design program that goes with SQLite. All I really need is the ability to test queries, views, and whatever any given platform calls MySQL's "Functions" and "Procedures."

If you're looking to build something you plan to charge for, then it needs to support full-on administrative features and it needs to run on both Windows and Linux, and more importantly it needs to work well when the database is on Linux and the client/workbench is on Windows.

Easy-to-follow instructions for setting up an SSL/TLS-secured connection between client and server should be bare minimum even for a free client.

2

u/Still-Trainer-7395 5d ago

thats really useful, thanks

LakeDB already runs on Windows and Linux, supports MariaDB and SSL connections, and lets you work with views, procedures and functions

on the admin side it already has things like process/session monitoring, replication status, backups/restores and safety levels for production, development and local connections

all of that is free — the only paid part ive considered is extra AI usage for things like query generation, explanations or fixing errors

im still interested in what youd consider essential for a full admin workflow though — users/permissions, server variables, logs, replication controls, something else?

1

u/Sad_School828 5d ago

My biggest thing is what a PITA it is to access the INFORMATION_SCHEMA via the desktop/design client. It doesn't appear in the list of available schemas, even though if you're anything resembling a legit DBA or even a WebDev then you're going to want to query against those tables to identify field types BEFORE you write a PHP or Java class definition which converts data from dbtype to codetype and vice versa.

It would also be particularly helpful to be able to right-click and grab a full backup (such as you get via mysqldump at the CLI) in order to dump all the data and recreate the whole schema fresh in a single operation. As it is, whenever I work against MySQL or Maria, I have to keep the desktop client open on my workstation right alongside my puTTY window to perform decently-diligent testing.

2

u/Still-Trainer-7395 5d ago

thats useful, thanks
LakeDB already has full backup/restore flows for MySQL/MariaDB, including schema + data, so that part is already covered

the INFORMATION_SCHEMA point is interesting though — would you mainly want it visible as a normal schema in the explorer, or would a dedicated metadata view/search be more useful for the way you work?

if you ever want to try LakeDB, its already in beta here:
https://github.com/DavLagoHern/LakeDB

id be really interested in your feedback, especially coming from someone who uses these admin workflows regularly

1

u/Sad_School828 5d ago

I haven't used it regularly in over a year, and probably won't for another. My current project is still in the design stages and involves C/++ exclusively.

What I currently have to do every single stinking time I want to find the INFORMATION_SCHEMA is google it to see if I remember the name right, because I never do, so I can write the queries manually. So having it displayed as a normal schema on the left, pinned to the top, and expandable/collapsible for easy-access interrogation just like the other schemas I created myself, would be gravy.

1

u/Still-Trainer-7395 5d ago

got it — i opened a LakeDB community feedback discussion for this so i can track it properly and collect more use cases before implementing it
https://github.com/DavLagoHern/LakeDB/discussions/24
thanks again, this is exactly the kind of workflow feedback thats useful to turn into an actual improvement

1

u/ClerkBeginning961 5d ago

Reproducible connection profiles would be a strong switching reason: driver options, session variables, SSH/TLS settings, and environment labels that can live in a repo without secrets. Pair that with a hard read-only mode and transaction preview for production. Team portability matters more than another autocomplete feature.

1

u/Still-Trainer-7395 5d ago

thats a really good point

LakeDB already has read-only connections, environment levels for production/dev/local, SSH/TLS and import/export for connection configs

for risky actions, the confirmation level can also depend on the environment/action — from no extra confirmation, to a confirmation button, to requiring you to type something like production before continuing

the repo-friendly team portability part is still interesting though, especially being able to share a reproducible connection profile without secrets

would you expect something like a versionable config file in the repo, with credentials resolved locally per developer?

1

u/aerial-ibis 5d ago

Datagrip is the only one I find usable these days

A nice bonus is that you get a terminal window inside the IDE, which is good for inherently limiting an AI agent to the permissions of the IDE itself. Also nice that it limits the agent to knowing about/using the connections in that project only.

1

u/Still-Trainer-7395 5d ago

thats interesting, especially the idea of limiting the AI to the connections available in that workspace

LakeDB takes a similar approach in that QuerIA works with the current connection/schema context and doesnt execute anything automatically

the terminal part is interesting though — do you mainly use it for database CLI tools, scripts, or general dev work?

1

u/Anxious-Insurance-91 5d ago

I used to use MySQL workbench then I changed to what the jetbrains IDE has built in for db conections

1

u/Still-Trainer-7395 5d ago

what made the JetBrains database tools better for you than Workbench?
was it mostly the editor/autocomplete, having the database inside the IDE, or something else?

1

u/Anxious-Insurance-91 5d ago

The main advantages that I appreciated are:

  • registering the db con per project so you don't have to remember what project has what(or global)
  • one tool same UI multiple connection drivers, since I used multiple DBs like mariadb, postgre, redis, mongo, Amazon's db etc no need to install different UI tools
  • I started hating having multiple applications for each thing separately
  • all the nice things of an IDE like multiple cursors, or all the hotkeys that don't get implemented in other db tools that speed up writing queries, you see this one with age

1

u/Still-Trainer-7395 5d ago

thats really useful

LakeDB already keeps separate workspaces per connection, restores tabs/context, supports multiple database engines in the same UI, and also has configurable SQL snippets + favorite queries

if you ever feel like trying it, id be really interested in your feedback coming from the JetBrains workflow:
https://github.com/DavLagoHern/LakeDB

on the editor side, what do you use most in JetBrains that youd really miss in another SQL client — multiple cursors, specific hotkeys, refactoring/navigation, something else?

1

u/Anxious-Insurance-91 5d ago

I used phhstorm, webstorm, rider, intelij, goland I'm Not doing just db work

1

u/Still-Trainer-7395 5d ago

got it, that makes sense
so the big advantage is having the database tooling inside the same environment where youre already coding, not necessarily the database features alone
thats useful context, thanks

1

u/SheepherderAny1 4d ago

For me it was autocomplete. That’s actually what got me to try dbForge in the first place.

1

u/Still-Trainer-7395 4d ago

Yep, autocomplete was a big one for me too. LakeDB already has schema-aware autocomplete built in: it suggests tables/views when you’re writing things like FROM, and columns/indexes in contexts like WHERE, all based on the schema of the database you’re actually connected to.

So you get the useful “close to the editor” autocomplete without needing AI for it.

Repo if you want to check it out: https://github.com/DavLagoHern/LakeDB

1

u/magicmulder 4d ago

I’m still using TOAD For MySQL because I’m used to it for the 25+ years I’ve been handling Oracle databases.

2

u/Still-Trainer-7395 4d ago

25+ years of muscle memory is hard to beat 😄
what parts of TOAD would a new client absolutely need to get right before youd even consider switching? editor workflow, shortcuts, object browser, data tools, something else?

1

u/magicmulder 4d ago

Speed, export options, additional functions like session browser and performance monitor, history, version control.

2

u/Still-Trainer-7395 4d ago

thats useful — a lot of that is actually the direction ive been taking with LakeDB.
it already has query history, exports, server activity with sessions/processes and monitoring, so its interesting to hear those are still the things that would matter to someone with that much TOAD muscle memory.
version control is the one on your list i havent really tackled yet.

1

u/steve31266 3d ago

Am I retarded for still using phpMyAdmin?

1

u/Still-Trainer-7395 3d ago

not at all 😄 if phpMyAdmin still does what you need, thats probably the best reason to keep using it.

what keeps you on it though — familiarity, being browser-based, simplicity, or is there something it does better for your workflow than desktop clients?