For the most part WordPress is the most portable software when it comes to moving your site to a new site host. But there are a couple pitfalls I want to warn you about that I recently learned the hard way.
Your new host has to support PHP and MySQL for WordPress to work properly. I moved my site hosting from Yahoo! to Siteground because Yahoo!’s antiquated support for PHP 4 was just not cutting it anymore.
Before you switch your DNS make sure you export the tables from each database you have in your MySQL database. Use something like phpMyAdmin to do the export. Then FTP your entire site into a folder on your hard drive.
Once this is done you may switch your DNS settings.
FTP your files to your new web host’s root folder except for the index.php. You may think that all index.php files are the same but they are not so you want to maintain the index.php on your web host that was there prior to importing your web site.
Create your new database(s) with whatever tool is provided by your web host. Use phpMyAdmin to import the tables into your new database(s).
That’s it! You should be ready to rock & roll.
PS: You may need to change the wp_options table if you changed your directory structure from your old site. Look for the fields ‘home’ and ’siteurl’ and change them to your new address and directory.