I'm moving my Wordpress installation to another webhosting company once again! It's one of those things, sort of like shifting house for one reason or another. Migrating the entire website is no easy task. Especially if your website is as complicated as mine!
Though I still have another 5 months of hosting left, I decided to move it earlier as I foresee I will be busy with work and other matters for the next coming months. Even now, I can't seem to find the time to blog about my favourite things. Anyway, will just have to do a better job on time management.
My personal website has been on a stand alone budget web hosting. I decided to migrate it to my other shared web hosting and save some cost. There is perfectly nothing wrong with Cynet web hosting, it is really cheap and yet very stable. You could customized your hosting requirement based on how active is your website. If you needed more storage or more bandwidth, just upgrade to higher hosting solution. I have been using it for 3 to 4 years, but decided to consolidate my various websites (and save some cost too).
There are several task that are required whenever you need to migrate your website. You need to note down all your settings in your current webhost and than later manually input them into your new hosting server.
For myeself I had to jot down the following information about webservers and settings, it includes:
1) Email accounts and email forwarders
2) Subdomains and whether they redirects or used as a website
3) Subdomains that are configured in the DNS settings using A records or CNAME
4) MX records (if you are using Google Apps or other third party email), since I wasn't using it, I just left it as is.
The above can be very tedious to do as it needed to be manually keyed into the new server one by one.
Next, I downloaded the entire website. This was easily done by going into the webhost control panel file manager. Highlighted all the files and compress them. I should have separated the Wordpress section and the rest of the website into two compressed files so ended up doing double job. Oh, well, it was minor hiccup. Fortunately I have a very fast internet connection.
Using FTP to download the entire website and then uploading it to the new hosting server. So now all my files are in place.
Before moving / setting up my Wordpress installation, I changed the NS nameservers and take a break for about 24 hours. DNS propagation can be quick from just an hour or much longer from 24 hours to 48 hours. Mine took about 12 hours or so. After an overnight sleep, it was back to setting up my website.
You will know if the NS Nameservers is pointing to your new host when your Wordpress installation is no longer functioning. The Wordpress Codex Website Help has some instructions to avoid downtime of your website. Well if your website is a very popular one and you cannot to have downtime, you could give that a go. But I decided to go for a simpler process, which means some website downtime was to be expected.
Then comes the moving of Wordpress installation, which fortunately was an easier process. Wordpress is a very versatile software and robust and migrating it is a fairly simple process. But I wanted something extra from this migration exercise. For me, I do use the build in automatic installs such as Fantastico, Softaculous or Installatron as I find such automatic update to be very handy. As such have to do some additional steps.
1) Create the Wordpress SQL database using the similar database name. The prefix will be changed due to the changing of webhost. So if in your previous hosting it was named abchost_wordpress123, the prefix will be changed to newserver_wordpress123.
2) Note down the SQL username and password, you going to need it for setting up the Wordpress installation. Also note down the previous Wordpress table prefix to be reused in this new installation.
3) Head over to Installatron (for my case), do a clean Wordpress install using the above SQL database information, username and password, and prefix table.
4) Upload my previously downloaded Wordpress installation onto the new install complete with all my other plugins and Wordpress theme.
4) Wordpress installed but empty of posts. So now go to phpMyAdmin, find my Wordpress installation SQL databased, look for import, and import my Wordpress SQL database. This will put back all my posts, plugins, settings and configuration.
5) Still not quite out of the woods yet, head on over to the Wordpress folder and edit the WP-config file. Items that needed to be edited are the Database name and Database username (it is the prefix part that needs editing, simple task). Save it, and the Wordpress should work as before!
There are still a few other things to check through, if you have a web form for contact, check the script are pointing to the correct folder or email settings in order to receive online queries. Also check folder permissions such as those required by simplepie scripts to have read/write access. And last but not least, if you are using email clients such as Outlook or pulling emails using POP3 from your other webmails like Gmail, Outlook.com or Yahoo! Mail accounts, you will need to reconfigure the mail settings.
If no other issues, voila! Your migrated website with Wordpress is now fully operational!
Have a pat on your back and brag about it with a blog post, like this!