About a year ago we signed up with a hosting provider that offered one of the best hosting deals around: lots of space, bandwidth, and transfer — plus all of the usual server software amenities that make life easier. Everything went smoothly at first…
In fact, the first six months of service were close to 100%. The few help-ticket items submitted were promptly resolved in a professional manner. We were ready to start some business and everything was going great. Then, about five months ago, we began noticing a serious increase in server downtime. Help tickets were also slow-going and the responses were like these cryptic one-liners that failed to address the actual problem, demonstrating a serious lack of concern and providing virtually no help. Further, multiple emails concerning account billing and renewal went (and remain) completely ignored. Indeed, email remains their only method of communication. At this point, we felt stranded, ignored, and utterly alone. Given this level of service, we were not comfortable hosting websites for our clients.
Good business requires more. It requires a secure, dependable, and responsive foundation — not what we currently possessed. Thus, after several months of tolerating their rapidly deteriorating service, we decided it was time to find a new service provider.
Looking back, the most difficult part of migrating our Online Empire to a new server involved finding and choosing a hosting service that offered a comparable — if not superior — deal. After scouring the internet, we had narrowed our options down to a handful of providers sporting the essential features we were craving: astounding bandwidth & disk space, reliable customer service, unlimited domains, Fantastico, as well as cPanel & WHM on Linux running Apache, PHP, and MySQL.
After careful deliberation, we decided to go with WebHostingBuzz.com. So far everything has been smooth. We’ll see, though. This is actually the fourth time in four years that we’ve switched hosts. Incredible. It would not be surprising to find us switching again around this time next year. Therefore — and hopefully regardless — it is our intention here to chronicle the events that enabled this most recent server migration to unfold as smoothly as it did.
First, we made backup copies of everything on the “old” server. This included raw files as well as databases, configurations, settings, emails, usernames, passwords, and log files. The whole enchilada — a ghost copy of the entire server, if you will, is required. Next step, secure the new host. Obtain server details and upload temporary index files for one or two domains. Now edit the domain name servers (DNS) for at least the domains with the temporary index files. Domain name propagation can take anywhere from immediately to three days.
After the temp sites have propagated successfully and resolve to the new server, create all of your domains (website locations) on the new server and upload any static and/or other simple sites. These sites should be good to go. Save any complex dynamic sites for later. Once the domains have been established — with or without their corresponding websites — edit any email information that may have changed and then also be sure to secure any usernames and passwords used in domain creation (i.e., the website space). You should now have all domains established on your new server, all email information updated, and a complete log of all actions taken to this point.
Before transferring any dynamic sites to the new server, take a moment to edit the DNS for any remaining domains so that they resolve to the new server as soon as possible. While the other domains propagate, do some research concerning the migration of databases and dynamic systems (such as CMS or shopping cart, etc.). For example, transferring WordPress-powered sites (such as this one) to a new server do not always go according to plan.
At this point you should upload any dynamic sites and wait until propagation completes. Once it has, restore any databases and edit any and all settings until the site(s) are functional. Repeat this process until every site has been restored on the new server. Don’t forget to log the process in as much (or as little) detail as is necessary. If everything seems to be working fine at this point, praise the Lord and make a full backup of the new server, just in case.
Always take the time to troubleshoot everything. Surf your sites widely and probe them deeply. Examine databases, source code, links, dynamic functions, and then check the error log files and check again. This step is vital. Spend a good deal of time checking for problems. If problems are found, log everything, reference the “old” server, and do not panic. Check, fix, repeat.
If, after a week or two, everything is operating at 100% and you feel like you have achieved server migration success, it is time to experience the joy of deleting everything on the old server and subsequently closing the account. In our case the hosting provider would not respond to our emails, so we could be sure if they were even getting them. Because we did not want to billed again automatically, we reported the credit card number used for the original transaction as stolen, and then sent a nice email for good measure. Talk about joy. ;)
So here we are, all migrated successfully and ready to do some business. The moral of the story is to keep your entire flock of websites as mobile as possible and always take good notes, just in case.