Why you should check your database backups

by Julian Tschannen (modified: 2007 Mar 01)

After three months of development, eiffelroom is finally launched. It had some starting difficutlies as you probably noticed: Shortly after the official launch I happend to delete the database!

Now this is no big deal since the server creates daily backups - or so we thought. Well daily backups are made, but the program which stores them does not backup busy files, which unfortunately occur in a database system all the time. So we were left with a partial backup of the MySQL filesystem. These binary files can not be imported into MySQL 4.1 since the database schema is not stored together with the data. So first I had to install MySQL 4.1 on a coworkers machine (It didn't work on mine), then recreate the schema by setting up the structure of the site again, and then I copied the partial backup over the new files.

We were actually lucky since the user and content table were in the backup, and the backup was only 4 hours old. So I restored what I could and started redoing the rest. And as I had to do it the second time it was actually quite quick. After one day we were already back.

So now eiffelroom can finally be used and - with the help of everyone - we can make it a worthy stay for all Eiffel users.

And of course we changed the backup policy. MySQL backups should not be done through a filesystem backup but through dumps. So we have now a nice cron job which dumps the database to a version independent sql file.