Saturday, March 04, 2006

Finally, MySQL WorkBench is in Beta!

Wow, I really have been waiting for this to happen...

I've been using DBDesigner 4 for some time now. DBDesigner let's you define a datamodel using familiar diagramming techniques. Although the user interface has some quirks, I find it a very handy tool, especially for defining simple, physical data models for MySQL. The has got some reverse engineering capabilities, and of course, you can have it generate the SQL DDL statements to realize your datamodel.

Now, for some time there's been talk about the successor to DBDesigner: MySQL Workbench. The alpha has been available since 14 september 2005. I did install it then, but at the time the functionality seemed so limited, it was clear the tool was in the middle of development.

Frankly, it became quite silent after that. The tool is also not (yet?) listed among the other client side mysql tools at the download page, so the forum is pretty much the only source of news and information. And now, through that, I have just learned that the MySQL Workbench Beta release is now available! Check out the announcement to find a link where you can download a version that's appropriate for you platform.

Obviously, I did not take a very thorough look, but some of the functionalities that are added as compared to DBDesigner 4 are:


  • support for views, triggers and stored procedures

  • multiple models and in a tabbed MDI interface

  • tool to synchronize the diagram with the realized model

  • import your old DB Designer 4 models

  • collapse/expand columns, indexes, triggers etc. section by clicking inside a table in the diagram (as opposed to a global setting in dbd 4)



Other interesting things are that like in DBDesigner 4, the diagrams are stored as xml files. This is very cool, because it gives you all kinds of possibilities to port from and through other applications. I have not seen the functionality to store the model in a database yet, maybe it has to built still.

Anyway, I will start testing this tool as of now. I think I will start to draw up the information_schema diagram with MySQL Workbench and see if I can find some bugs, or features I'd like. I already spotted one: I can't reverse engineer the information_schema database. I will probably use this opportunity to start using MySQL 5.1, as there have been some additions to the information_schema database.

4 comments:

Cuongx said...

I test MySQL Workbench with latest MySQL (5.0.19-win), but get stack with "Database Synchronisation". When I synchronise my demo schema, it always reports "syntax error" in "Finalizing the syncronizing process" step. I check back but find no "syntax error", then I change several SQL commands, but no works. Any recommand for me? Thanks much!

rpbouman said...

Hi Cuongx,

No, I did not encounter this error, so I'm
afraid I can't help you with that.

Did you give the MySQL forums a try? There's one especially dedicated to MySQL Workbench: http://forums.mysql.com/list.php?113 .

Otherwise, you should probably file a bug report. Bug reports are enormously appreciated. They are essential to making better MySQL products, so please file that bug report at http://
bugs.mysql.com/
.
Thanks, Roland.

Cuongx said...

Thanks, I will discover your links and send them bugs if posible. By the way, MySQL Workbench now supports database design poorly (less than DBDesigner4 does, but what a pity that DBDesigner4 was discontinued).

funckYtown said...

Hi,

Yes DBDesigner, was and IS a great tool, it helped me to make dadabase design so EASY, so GREAT.
I have a question :
Somewhere i read in DBDesigner:
that it was possible to have different XML files, and to inter-connect them.
To have a MAIN doc, and smaller SUBdocs, and to be able to manage them separedly but still are connected.
I am looking for hours now, but I do not see where it is defined in the DOC.
Thanks to FabForce,
Michael G. Zinner

SAP HANA Trick: DISTINCT STRING_AGG

Nowadays, many SQL implementations offer some form of aggregate string concatenation function. Being an aggregate function, it has the effe...