Mar 31

MySQL 5.0.51 on Mac OS X 10.5 (Leopard) is usually a model of how to port to Mac: an easy-to-use .dmg, a sensible install location, and a preference pane normally mean It Just Works™. On my last couple of installs, though, I’ve ran into some minor headaches. Here’s how I got around them.

First, the preference pane. When you try to either start or stop the MySQL server, it just kind of thinks for a second and then does nothing. It’s not your fault; the preferences pane just doesn’t work in Leopard. The good news is that there’s a fix out, located at the URL below:

ftp://ftp.mysql.com/pub/mysql/download/gui-tools/MySQL.prefPane-leopardfix.zip

Remove your old preference pane first (command-click and select “Remove ‘MySQL’ Preference Pane”), then doubleclick on the new one to install.

The second problem is that the MySQL daemon doesn’t launch on boot. MySQLCOM (the startup script) isn’t even in /Library/StartupItems! In fact, it’s just been installed to the wrong place. Run this command to move it to the right spot:

sudo mv /usr/local/MySQLCOM /Library/StartupItems/MySQLCOM

Type in your password and you’re good to go.

All things considered, both are pretty painless. Now if only MySQL would test their releases on OS X before releasing them, that would be delightful.

Oct 23

Internet Explorer 7 is a welcome upgrade from IE 6, but it still has its share of display issues—and some new ones besides. Recently, I ran across one that falls in the latter category. Although Patrick Griffiths and Dan Webb’s Suckerfish dropdowns (and their follow-up, Son of Suckerfish) work fine in IE 6, they more or less choke and die in IE 7.

The problem is this: if you change focus within the browser (by clicking in a text field, for example, or somewhere on the background), then move back across the dropdowns, you’ll notice that all the menus “stick”—they don’t go away. In other words, they don’t refresh when the onmouseout event is fired, even though the special “hover” class is removed.

Luckily, the fix for this is pretty simple. Assuming your unordered list menu ID is “menu”, you just need to add the following code to your stylesheet:

#menu li:hover, #menu li.hover {
    position: static;
}

Voilà, he says with proper grave accent! Problem fixed.