Another method is to modify your website on the old server so that it does not accept updates to the database during the transfer. Like the previous technique, you or your web designer would need to make changes to your site during the transfer to make this work.
This technique is best if you are rapidly progressing through the steps necessary to transfer, and/or don't mind if a couple people temporarily see the old site while the DNS changes propagate. This is also good for sites where the database does not change that often because of user input.
Depending on how your site is coded, this could mean putting the site into a read-only mode where people can view information but not make any changes, turning on maintenance mode on your blog or CMS, or possibly disabling the database all together and putting up a temporary page telling customers the site will be up shortly.
Ideally you would do this immediately before transferring the latest copy of the database over to the new server, and once that is completed, changing the name servers and DNS to point to the new server.
While the DNS propagates (updates) worldwide, some people will see the site on the new server, and some will see the site on the old server, yet only the new server will accept changes in the database.
A simplified set of steps include:
- Transfer all the files, databases and other settings over to the new server. (Via free content transfer or you transferring the files yourself.)
- Test the site on the new server to make sure it works as expected.
- On the old server, modify your site so it cannot accept changes to the database.
- (If changes have occurred to the database between steps 1 and 3, then re-transfer the most recent version of the database. This step is unnecessary if you do step 3 immediately before or after step 1.)
- Change the name servers and DNS to point to the new server.
While the DNS propagates worldwide, some people will see the site on the new server, and some will see the site on the old server.