Initial Feedback

Compares and synchronizes MySQL database schemas.

Moderators: Chris Auckland, eddie davis, Michael Christofides

Initial Feedback

Postby Stephen Harrison » Tue May 11, 2010 12:44 am

First off, thank you! I've been hoping for a version of MySQL compare ever since I heard of SQL Compare, I hope this is the start of a new product line for RedGate.

I spent a little time over the weekend with the product and all in all I'm very impressed. Got a few little niggles but that's what EAP's are all about!

My biggest problem is with zero value DataTime fields ('0000-00-00 00:00:00') which is a special value in MySQL. If I have fields defined with this value as a default MySQL compare failes to syncronize. To be fair, if I use the SQL script I get the same problem with MySQL Query Browser, however I am able to edit the tables with MySQL Administrator, so hopefully theirs a way around it. I did a quick bit of research but didn't find any answers – I'll continue to look to see if I can figure it out as it might well me something I'm doing wrong.

Some better feedback on the incorrect database version when connecting would be really useful. Between reading it was only 5.1 and getting my hands on the product I'd forgotten and wasted a heap of time trying to figure out why it appeared to connect but didn't return any tables. Eventually the penny dropped and I upgraded my local MySQL instance (sadly that didn't go at all well and I lost a load of time because of that).

The first time you click the drop down list for the table names the “Database:” field wobbles around, this is particularly noticeable if you've got a problem connecting when it wobbles every time.

I like the concept that MySQL Query Browser/Administrator have of stored credentials from a drop down list, I would love to see that on the project page, rather than having to look up the credentials etc. each time I do a new project. If I've got local, test and live databases for a variety of projects it's going to get very boring entering the details time and time again. I also find it odd that User name and password are indented as I think of them as part of the overall connection string on the same level as the host name – but that's probably just me.

I connected MySQL compare to my AWS RDS database instance and it appeared to play well (as you'd expect), but I didn't do much with it as that was a production server, when I get some more time I'll fire up a new RDS instance and play with that some more.

The two Find's work differently and that's a little odd. The Find in the top toolbar whilst being more of a filter acts as I would like (reminds me of FireFox's find), rapid updates as I type. The find within the create scripts on the other hand isn't so nice to use. I'd prefer it if as you typed it went to the first match it found, it would be nice if it wrapped around to the top as well – if you happen to click in the text after what you are searching for then the find might well tell you theirs no match when actually there is. I also would like the create script find to work in both source and target at the same time (i.e. next takes you from source to target when all matches in source have been found).

I may have missed it, but in the source and target creation script it would be nice to be able to remove highlighting of diffs caused by database names and auto increment values, for example, if I'm comparing a database I use for local manual test and integration tests they will have different names so they can both be local. That then highlights a difference in table and constraint specifications, which it's easy to ignore but might mean that a difference in the actual constraint clause gets overlooked (I appreciate the main table comparison is clever enough to ignore these). Maybe an extra option in with the Ignore options for the project.

The columns for the table listings are not resizeable, that's a little odd but is fine if auto-sizing works, but I had one database where it ended up with the Owner column header showing just “...” and the data for it being “b...”.

Loving the product so far :D


Steve.
Stephen Harrison
 
Posts: 3
Joined: Sun May 09, 2010 5:28 pm
Location: Cambridge UK

Postby Lionel » Tue May 11, 2010 10:04 pm

Hi

Thanks for all the great feedback. Glad you are finding the program useful and since it is only the first EAP I am sure I will have lots of time to remove the niggles :).

I will have a look at the zero value datetime default issue. It sounds like I need to add some code to treat the zero values differently. Definitely sounds like and oversight on my part sorry.

I was having great difficulty in getting the database versions directly from the server as the strings returned by the server have wildly different formats. That information will definitely get improved. MySQL Compare should support MySQL version 5.0 as well as version 5.1, however there are some problems with the v5 support. Hence sticking to 5.1 is better at the moment.

The wobbling problem sounds really bizarre - I will look into it shortly.

Regarding having the storing the credentials on the project page - this screen is going have an overhaul shortly as I would like to add other ways of connecting to the database. Whilst doing this I try and find a way of incorporating your suggestions into the design.

In respect to the two Finds - we also hit this problem while building SQL Compare and never really agreed on a good compromise. Your suggestions will be taken on board and I'll see if we can hammer out something better.

You also mentioned the erroneous differences in the sync scripts. I will remove the database names from the script, as they are not necessary. I'll have a look at the highlighting of the incremented values too.

Finally, I have actually fixed the bug with the resizing columns, but it didn't quite make it into the EAP.

Glad you are enjoying MySQL Compare and thanks for all your detailed feedback.

Lionel
Software Engineer
Red Gate Software
Lionel
 
Posts: 155
Joined: Fri Dec 16, 2005 11:09 am

TIMESTAMP default values ('0000-00-00 00:00:00')

Postby jbharathj » Fri Aug 27, 2010 12:15 am

Hi Lionel,

I'm using TIMESTAMP datatype in most of my tables & set the default value to ('0000-00-00 00:00:00')

Today I downloaded MySQL compare. I tried to test it, but failed to synchronize b'coz of TIMESTAMP Default values. I think the problem is not yet rectified. Hope this error will be rectified soon.

Except this major issue, I feel this product is awesome. :D

Regards,
Jay
jbharathj
 
Posts: 1
Joined: Fri Aug 27, 2010 12:04 am


Return to MySQL Compare

Who is online

Users browsing this forum: No registered users and 0 guests