This blog outgrew my old host. It happens. I have a lifetime hosting plan with them and Kristin’s blog and a few other sites that no one ever visits are still over there. The traffic this site receives was hitting that account’s cap and things were timing out, the site was sluggish, and some of the more PHP5 snazzy bells and whistles I’ve been tinkering with weren’t performing nicely over there. So with much fingernail-biting, angst, and trepidation, I took the plunge to move this blog and Screaming Tongue. To my surprise, migrating WordPress blogs is *insanely* easy to do.

Step 1:
Make sure you’re running the latest version of WordPress. Download and install WP-DBManager plugin by Lester Chan (you can follow him on Twitter here). Follow all the directions located here to get it up and running at your current host.

Step 2:
Run a backup of your blog using WP-DBManager. It should backup a copy of your database to a sub-folder of your blog. FTP into your current webhost and download the main folder containing all of your blog’s files, including the sub-folder with the backup copy of your database.

Step 3:
Find a new place to host your site. I went with Steadfast Networks after much researching of hosts online (so far my site is running *much* faster and more smoothly, although exactly 3 days after I switched, all of my sites went down for about 10 minutes as the server hosting them was rebooted after a power outage; they resolved the issue quickly and were very responsive to my phone call about it, so I am cautiously optimistic that this was a rarity for them). Set up your domain with your new host and setup a new MySQL database for your blog, but don’t transfer the DNS yet!.

Step 4:
In the folder you downloaded earlier, locate your wp-config.php file. Open it with your favorite text editor and change the database settings to match the settings for the new database at your new host.

Step 5:
FTP into your new host account and locate the folder for your site’s domain name. Upload all the contents from the folder you downloaded earlier into this folder.

Step 6:
Your host should have an address via which you can reach your files that is separate from your domain name. Use that root URL, followed by /wp-admin/install.php to install a fresh copy of WordPress. Follow the instructions to install your blog.

Step 7:
Login to your newly created WordPress blog and go to the plugins administration screen. You’ll find all your former plugins are there, but not activated. Activated WP-DBManager. Visit the Database tab and click on Manage Backup Database. Select the backup that you last performed:
Sample the Web 203A Manage Backup DB 2014 WordPress
Then at the bottom of that page, select Restore. Note: Once you do this, you will no longer be able to access this new site using your webhost’s alternate URL. Instead you will have to wait until your domain name is pointing to this new location.
Sample the Web 203A Manage Backup DB 2014 WordPress

Step 8:
Go to the old version of your blog and write a post that says something brief like “Moving my blog today. Once it happens this post will disappear.”

Step 9:
Go to whoever you signed up with for your domain name and change the DNS nameservers to match those of your new host. Reload your website obsessively until the post you wrote in Step 8 disappears. Once this happens, the transfer has completed successfully.

Step 10:
One final thing to do. Since your site is now on an entirely new server, most likely the mod-rewrite rules that were in place for any custom permalink structures that you were using aren’t going to work. Go to WordPress admin screen and click on Settings—>Permalinks and resave your settings. This will either rewrite your .htaccess file for you or give you the code you need to insert into your current .htaccess file. Perform this edit and then everything should work fine. If you had any other special rules in your .htaccess file, these will most likely need updating too.

It’s really really simple. I was surprised it worked so easily when I did it with a test blog. Then I did it with Screaming Tongue and it still worked. Then I did it with Sample The Web, and here we are. Hope this helps some of you out there who may have been hesitant to get out of a bad hosting situation into a new one.

Share and Enjoy:
  • Digg
  • del.icio.us
  • ThisNext
  • Facebook
  • Fark
  • Furl
  • Google
  • NewsVine
  • Pownce
  • Propeller
  • Reddit
  • StumbleUpon
  • TwitThis