CocoaMySQL is a splendid (and free) graphical interface for MySQL databases. Unfortunately, connecting to a MySQL 4.1 server can be tricky. When I first tried, the only warning I got was 'connection failed' -- even though I was sure I provided all the correct information (host, user, password...). The problem is that MySQL, as of version 4.1, uses a new encryption algorithm to store its passwords. And CocoaMySQL (v 0.5) doesn't know how to deal with that. Users without a password have no trouble to connect, but we don't want to throw security overboard for a good interface, do we?
Luckily, MySQL 4.1 has a feature to preserve backward compatibility by using the "old" encryption for your passwords -- users with such password are able to connect via CocoaMySQL without any problem at all. Creating an "old" password is simple in the Terminal, using the MySQL command line interface:
SET PASSWORD FOR 'mysql_username' = OLD_PASSWORD('password');
[robg adds: I haven't tested this one. I would think that an update to CocoaMySQL would take care of the problem. However, according to their webpage, it hasn't been updated since Fall of 2003, so I'm not sure how likely that is.]
Mac OS X Hints
http://hints.macworld.com/article.php?story=20050210054913596