I finally upgraded my WordPress install today, and like a responsible web admin, I backed up my database and also my file tree. After my upgrade I noticed that my comments were all gone! I grumbled a bit and figured I’d extract the files from my backup. I opened my file up and noticed there were no comments. Doh! Where are they? I checked my backup from June, no comments. The latest backup I had with comments included was from February. The phpMyAdmin console showed the table “in use”. Not sure exactly what to do, I opened up a quick Live Chat with my hosting provider, HostGator, and noticed that I was #1 in queue with what, 147 agents available? My problem was fixed in less than 5 minutes. The fix also recovered a few comments that were posted after my last good backup.
I apologize to those of you that tried posting comments the past few months, because they were all eaten up due to the table being locked. I’m not sure what happened, but the support guy told me how to fix it myself if it ever happens again. Essentially, there’s a GUI in the cPanel to check and repair individual databases. I work with MySQL quite a bit at work, but I wouldn’t consider myself a DBA. Now I need to find a better WordPress backup plugin, because I think it should have thrown out some type of error if the table wasn’t readable.
Anyway, I’d like to take this opportunity to recommend HostGator. If you need hosting, please check them out. Any signups done through my link will help pay for my web hosting. Also, you can use code SCIFI25OFF for 25% off your first order. They offer 1 click WordPress installations if you are looking for something like that.
Here are my steps prior to all WordPress upgrades:
- Backup Database via Plugin, also can be done through phpMyAdmin
- Open cPanel and through File Manager, copy my WordPress directory “/installdir” to another directory like “install2011backup”. I think you can only do this quickly if your blog is not installed directly into the root / – note, this takes just SECONDS, rather than downloading thousands of individual files
- Run upgrade, hope for the best
Here is how I restore
- Restore Database via phpMyAdmin
- rename install directory to /install-bad
- rename backup directory from /install2011backup to /install
Do you have a blog? What is your disaster recovery plan?
Sounds a lot like a case of broken tables. You can fix this yourself in phpmyadmin a lot of the time by using the query
REPAIR TABLE $tablename
that will restore the table quickly for you should this happen in the future.
You can probably make a crontab to auto check / repair tables once every so often to help prevent down-time.
Hope this helps out 🙂