My First BoF – MySQL GUI's

Last night, I attended Mike Zinner’s presentation of MySQL GUI’s, most specifically MySQL Workbench. In summary I was very impressed with the current work, and the future potential. I’ve been waiting for now about a year to get access to full strength MySQL Workbench (it has been available for some time, but still in early development), having previously used DB Designer for MySQL Data Modelling. One of the limitations is finding a quality tool that runs under Linux. Well MySQL workbench will satisfy this and far more in the future.

A quick summary of some of the glossy features.

  • Reverse Engineering of schemas from multiple input sources including MySQL, Oracle, MS SQL Server.
  • Synchronisation with a MySQL Database.
  • Quick Re-Synchronisation.
  • Full GUI tools and features for creating and maintaining database objects including tables, primary keys, foreign keys, views.
  • Fully customisable styles via XML and <svg> functionality
  • Intitutive point, click and drag functionality for database objects (primary keys for example)
  • An interactive shell for the GRT.

The Best Feature

The introduction of the GRT Shell, an interactive shell will provide near unlimited potential.

From the shell you can do everything you can do via the GUI, and you can do it multiple languages including Lua, Python, C/C++ Java and in future Ruby, as well as the potential of many more. The potential of Scripts and Plugins is limitless. Mike demonstated a number of simple examples, so I’ll be very keen now to review and contribute to this functionality now that I’ve seen it in action. MySQL is working actively for community contribution with the recent introduction of the MySQL Forge.

Some of the discussion was the future direction of technology. Presently, there is some limitation of reuse in the end user GUI. A rich GUI is provided, but is platform specific, providing a different look and feel in Linux, Mac OS and Windows. One of the options, and definitely of interest is the consideration of using Java as a standard GUI language.

One of the requests was for more feedback, greater community input and contribution. I agree there needs to be better means here, one of my suggestions was perhaps an interactive Feedback model built into beta products, actively prompting users to provide feedback to MySQL. This would also enable MySQL to gain greater insite into the users of the GUI products.

In summary, excellent work Mike, with a team of just 4 that supports and develops all the MySQL GUI products.

Here is an overview diagram of the MySQL Workbench.