DBeaver: Database Administration Tool

David G - DrupalThroughout my web development career I’ve used numerous DBMS management tools. Years ago I used whatever SQLServer comes with, then for a time I used MySQL Workbench, for a brief while I used SQuirreL, and other times Sequel Pro and Navicat and even 0xdbe. Above all others I typically use PhpMyAdmin. But, as of the last few years I’ve been very put off by phpmyadmin and it’s wildly changing user interface and use of ajax all over the place. So I had been looking on and off for alternatives. Just this week I stumbled across DBeaver by JKISS.

DBeaver (pronounced dee-beaver) is a cross-platform, FOSS database management tool currently maintained by 2 developers. My mimimum requirements for a DB management tool are:

  • An install can run on my OS, occasionally I work from Windows and OSX but usually I work in Linux. I like all my applications to be able to run natively on whatever OS I use, my current IDE phpstorm can run anywhere (as could my previous editors and ides: sublimetext and komodo ide).
  • Support using SSH to connect to remote database servers. My current work has granted access to certain databases only through SSH ports. In the past I had trouble setting this feature up on numerous clients.
  • Browsing large datasets should be fast.

By using phpmyadmin I currently have some ssh-tunnels created on system boot that connect to remote servers. Configuring DBeaver to use the existing tunnels was simple enough:

Example DBeaver application window with database selected.

Example DBeaver application window with database selected.

Alternatively, if I wanted to supply the SSH credentials per database connection, DBeaver can create/destroy the necessary connection when I access the host. DBeaver supports this out the box — it would simply take me time to adjust my configuration to make use of the built-in SSH conventions:

Setup an example SSH based connection.

Setup an example SSH based connection.

After defining the connection to the database, you can supply the necessary per-connection SSH information.

After defining the connection to the database, you can supply the necessary per-connection SSH information.

While DBeaver uses Java to remain crossplatform I have no complaints and the developers supply a .deb package installer my Ubuntu 14.04 LTS work computer can track updates with.

After reading through the changelog of DBeaver recently it looks like they moved to a newer Netbeans based framework for the standalone UI of the app. Having used Netbeans before the application loads quickly and loads large database and result sets very quickly (I have many many databases that are large on my laptop and even with configuration tweaks phpmyadmin on my laptop feels slower).

Example of viewing a tables data from available database(s) thru the active connection.

Example of viewing a tables data from available database(s) thru the active connection.

Lastly, I dont have a picture of this but when you add a new database connection if the driver doesn’t yet exist in your Java runtime the application will download the latest JDBC driver for the DBMS system.

Currently I’m very pleased in finding this DMBS management tool and am slowly working to make it my daily-driver for database spelunking.

Looking for quality web hosting? Look no further than Arvixe Web Hosting!

Tags: , , | Posted under MySQL | RSS 2.0

Author Spotlight

David Gurba

I am a web programmer currently employed at UCSB. I have been developing web applications professionally for 8+ years now. For the last 5 years I’ve been actively developing websites primarily in PHP using Drupal. I have experience using LAMP and developing data driven websites for clients in aviation, higher education and e-commerce. If you’d like to contact me I can be reached at david.gurba@arvixe.com

Leave a Reply

Your email address will not be published. Required fields are marked *