First We need to Backup our existing WordPress blog
Backing up posts, pages, comments, custom fields, terms, navigation menus and custom posts, images and media, plugins & theme (in case of paid ones) comes under Top Priority.
Here I mention the easy steps to follow :
1. Firstly we need to export our wordpress blog in .xml format via freely available export tool in Dashboard. Export all posts, pages, comments, custom fields, terms, navigation menus and custom posts as xml. Download xml file to our local drive.
2. Then backup all images and media files using any ftp client (i used filezilla), login with the given credentials and go to public_html>wp-content. Download folder uploads to our local drive.
3. Regarding theme & plugins, if you have premium, paid ones then you should back them up as well by going to the location public_html>wp-content. Download the folders plugins & themes.
Note: In my case the folder structure is public_html>www.ujjwal.net.np>wp-content because my domain is an addon domain in a hosting server having more than one domains.
Now its turn to setup your new blog at the new hosting server
1. You can install wordpress by using QuickInstall, fantastico auto-installers if provided by the hosting solution or else you can upload and install manually.
2. Then search and install the plugin wordpress importer. Now, import the previously backed up xml file .
To do so, Go To Tools> Import>Wordpress blog.
3. Finally, using a ftp client, upload the previously downloaded folders uploads, themes and plugins to their respective locations inside the location public_html>wp-content
Wasn’t it simple & fast !!?? .
Note : Even if the blog is migrated and nameservers are changed, keep the blog at old host for about 48-72 hours as DNS propagation may take up to 48-72 hours. When its done, delete the blog at your old host.