Help, My Blog Posts Have Disappeared!

Have you suddenly discovered that your posts and pages have all disappeared? Your blog theme/template is still there but it’s saying no posts found?

This has happened to four clients in the last week, three on Hostgator and one on another. I know Hostgator are gradually upgrading all their servers and I’ve no idea if this is the cause but wouldn’t be surprised.

The reason (in these cases) has been a crashed wp_posts database table. The error message given (if you get one at all in your theme or admin menu) is often: “wp_posts is marked as crashed and should be repaired”. To fix is pretty simple. Login to your host’s control panel and go to the phpMyAdmin option. This brings up a list of your databases. Select the one you’re using for WordPress to see the WordPress tables in that database. A list like this will appear (the actual number and name of some tables will vary depending on the plugins used):

Corrupted table

(Click to enlarge)

You can see the problem here, wp_posts is labeled as “in use” and is locked. To repair, simply check the box next to wp_posts and select Repair table, as in the image below.



(Click to enlarge)

You should then get a success message and your posts will have reappeared. If not then you may have a bigger problem, but at least you have a recent backup. Right?!

83 thoughts on “Help, My Blog Posts Have Disappeared!”

  1. Amazing, thank you very very much for this awesome tutorial, very impressed, i thought my content had gone but by following your tutorial my content is now back up. Thanks so much!

  2. Hi there,

    Many thanks for this entry. I thought my 10 years worth of blog postings were all done the drain! 

  3. Thanks Joel! I was able to restore my posts but am still getting error messages for all the pages on my site. Is there another table that manages the pages or links to the pages?

    1. Hi Ken. Posts and pages are held in the same table, so what error message are you getting? Is it for all Pages? There may be some problem with the table still, but posts and pages are almost the same in the database so there is something funny going on.

    2. Thanks for replying Joel. Turns out my PermaLink Structure got changed. Had to go into my .htaccess file and change permission to 666, then go into WP_Settings_Permalinks and restore the custom structure I had previously setup. It was a simple fix that I found at Squidoo.com.

      Thanks for helping – I had a small heart attack when I first discovered the problem.

  4. Thanks Joel! I was able to restore my posts but am still getting error messages for all the pages on my site. Is there another table that manages the pages or links to the pages?

    1. Hi Ken. Posts and pages are held in the same table, so what error message are you getting? Is it for all Pages? There may be some problem with the table still, but posts and pages are almost the same in the database so there is something funny going on.

    2. Thanks for replying Joel. Turns out my PermaLink Structure got changed. Had to go into my .htaccess file and change permission to 666, then go into WP_Settings_Permalinks and restore the custom structure I had previously setup. It was a simple fix that I found at Squidoo.com.

      Thanks for helping – I had a small heart attack when I first discovered the problem.

  5. i found it, the problem was revver video plugin, even though it was installed and i deactivated all plugins, revver was the problem just by being there!

    1. Great, thanks for letting me know you solved it Tony! You did the right thing deactivating the plugins, but you never can tell. Also if ever doing an upgrade, if there are new versions of any plugins, always upgrade those before upgrading WordPress. Glad it’s working for you now!

  6. i found it, the problem was revver video plugin, even though it was installed and i deactivated all plugins, revver was the problem just by being there!

    1. Great, thanks for letting me know you solved it Tony! You did the right thing deactivating the plugins, but you never can tell. Also if ever doing an upgrade, if there are new versions of any plugins, always upgrade those before upgrading WordPress. Glad it’s working for you now!

  7. It seems i have a bigger problem.
    they want to charge me too for to get restored to the last time they did a back up which was sunday, thats 3 days blogging lost and some long posts were in there too.
    They also didnt see what the fault was.
    i have no idea if it will happen again.
    Any suggestions?

  8. It seems i have a bigger problem.
    they want to charge me too for to get restored to the last time they did a back up which was sunday, thats 3 days blogging lost and some long posts were in there too.
    They also didnt see what the fault was.
    i have no idea if it will happen again.
    Any suggestions?

  9. If you think Joel’s free advice is good (and it is), try hiring him. BEST decision I ever made on the web!

  10. I was working on my site when suddenly all the pages and all the posts were gone … just vanished.

    By Googling “my pages and posts have disappeared” I found this site and I want to say thank you Joel for having a solution at hand here.

    One thing though … when I got into my cpanel I couldnt find the “myphpadmin” anywhere. After investigation I found out that my problem was that I was using the “x”-theme in my cpanel, which apparantly doesnt have this feature. By changing it to “x3”-cpanel theme, the “myphpadmin” appeared and I was able to fix the problem.

    Thanks again Joel.

    1. Good point, I hadn’t though of the cPanel themes thanks. You can also find phpMyAdmin under MySQL databases at the very bottom of that page. Glad you got it fixed!

  11. I was working on my site when suddenly all the pages and all the posts were gone … just vanished.

    By Googling “my pages and posts have disappeared” I found this site and I want to say thank you Joel for having a solution at hand here.

    One thing though … when I got into my cpanel I couldnt find the “myphpadmin” anywhere. After investigation I found out that my problem was that I was using the “x”-theme in my cpanel, which apparantly doesnt have this feature. By changing it to “x3”-cpanel theme, the “myphpadmin” appeared and I was able to fix the problem.

    Thanks again Joel.

    1. Good point, I hadn’t though of the cPanel themes thanks. You can also find phpMyAdmin under MySQL databases at the very bottom of that page. Glad you got it fixed!

  12. Thanks Joel, great fix, wasn’t thinking clearly enough to get there on my own. I’d just sent out a load of marketing material yesterday then my site crashed! I’m with united hosting by the way.

  13. Thanks Joel, great fix, wasn’t thinking clearly enough to get there on my own. I’d just sent out a load of marketing material yesterday then my site crashed! I’m with united hosting by the way.

  14. Joel, you are a lifesaver. As you know from my emails, I was in a panic and you graciously saved the day – on a Sunday, no less. Thanks for everything!

  15. Phew! I sure am glad I found this post. 160+ articles sent to oblivion and I thought that I was going to have to replace them all. I’m with Hostgator too but I haven’t ever had any problems with them before.

    Thanks for the info

  16. Phew! I sure am glad I found this post. 160+ articles sent to oblivion and I thought that I was going to have to replace them all. I’m with Hostgator too but I haven’t ever had any problems with them before.

    Thanks for the info

  17. OMG you just saved me from a massive panic attack. It worked exactly as you said. I’ve bookmarked this in case it happens again.

  18. OMG you just saved me from a massive panic attack. It worked exactly as you said. I’ve bookmarked this in case it happens again.

  19. THANK YOU! This just happened to me and I was freaking out until I read this, it worked perfectly- all is right in the world now!

  20. THANK YOU! This just happened to me and I was freaking out until I read this, it worked perfectly- all is right in the world now!

Leave a Reply to xescxCancel reply

%d bloggers like this: