MySQL Workbench has been my main database IDE for a while now. However for the last several months I’ve been trying out different database IDEs. The intention was to find the perfect one. I haven’t found one as yet, however the one I’ve settled for is almost perfect.
DataGrip, developed by JetBrains, although still not perfect, seems to address all of the above issues.
Unlike, MySQL Workbench, it doesn’t limit you to managing only one data source type. At the moment you can connect to everything from MySQL to Postgres to MongoDB, there are a total of 21 different types of data sources you can connect to, which almost makes DataGrip seem like the Swiss army knife of database IDEs.
By default when connecting to data sources the schemas are hidden from view. The user has to select which schemas are to be made visible from those which are available. This then creates a much shorter ‘active’ list, and removes none relevant schemas from view and reducing any potential accidents from occurring.
There is now an alternative to using SQL commands when querying a table, it is now possible to use the Filter criteria input field. Using this input field allows for the use of conditional operators against a field, like so, name == ‘John Doe’ .
JetBrains has integrated DataGrip in to many of their other products, for example PyCharm. So it is not necessarily necessary to have the standalone client.
DataGrip is available for Linux, MacOS, and Windows. So there is no need to learn a new IDE due to lack of availability should you change operating system.
DataGrip's styling is consistent with other JetBrain products. Menus and options are laid out in a logical manner.
Has clear and concise messages about the action(s) you are about to perform.
Executes queries quickly on large databases, and is (so far) not prone to crashing or locking up.
There is a 30 day trial period, after which a subscription is required. There are other alternatives which are free, including MySQL Workbench (Community).
It has very little, to no, ability to manage users. Which is a shame as this would have made it, in my eyes, near perfect. Users of DataGrip are resigned to manually managing users via the terminal or another client.
If all your using is MySQL and you don’t want to pay for a subscription, and you look past the above issues, then MySQL Workbench (Community) may be sufficient for your needs. But if you want a little more control and a unified experience then maybe DataGrip might be worth looking at.
There maybe other database IDEs out in the wild which I have not considered but at the moment DataGrip is my tool of choice.