Its 6:30 AM -- do you know where your foreign keys are?
I do. I just completed an all night upgrade of MySQL from 3.23.58 to 4.1.12
The upgrade itself was straight forward, the trickier part was dealing with all of the dependencies -- code I'd installed ( MythTv, for one exasperating example ) and code I'd built around it ( HackerMojo, HaikuDojo, MmmBrains, EzEnroll, MetaDOT, drupal, etc ), which mostly came down to upgrades on PHP and Perl DBD.
I try to keep things very separate and it usually helps keep dependencies pretty clean. My only real stumbling blocks were:
1) mysql server uprade scripts that rely on the mysql client which I wasn't going to install on the server ( at least not until the server was upgraded )
2) mysql server upgrade scripts that rely on upgraded DBD libraries.
Basically I just had to trust that things would work out and get friendly with the --nodeps and --force options. Alls well that ends well.
Oh yeah, University of Kentucky's perl mirrors suck. ( the fact that I was using them tells you how old my db machine is ) so I'm now using University of Tennessee and NASA's mirrors.
Today also marks the end-of-life for another old server -- a pentium 100 -- which I'm putting in the trash. That leaves me with 7 systems, of which I hope to retire the next three oldest this summer ( a dual processor pentium II and two pentium 3's ). Its amazing how long these things last considering I run them pretty much 24x7. I'm hoping to slim down to 1 windows pc, 3-4 linux, and a mac.