Archive for the ‘WordPress’ Category

WordPress Server Migration Process

Wednesday, April 16th, 2008

I have found that I am moving a fair number of WordPress sites around to different servers. The following is an outline of the steps I have found useful that can reduce the complexity (and cost) of these migrations.

Yes, I know that a bunch of these steps couple be eliminated with simply copying and moving databases around. That is great if you are very familiar with db managed and related tweaks. This is more of a dummies guide to the transfer. Please though do comment and let me know your thoughts and best practices you have found for such migrations.

Option 1: Database familiarity required

  1. Setup up a Web server with mySQL and Apache. If a hosting recommendation is required then I recommend WestHost that can provide this service for less than $35.00 per month.
  2. Setup a mySQL database to match the database name, ID and password in use by the currently active WordPress installation. This is found by looking in the active site’s wp-config.php file.
  3. Install the version of WordPress currently in use for the active site. To simplify matters, copy the wp-config.php file from the active site for use on the new site. It is not uncommon for the site to be operating under old versions of the software. Archived versions are available for download at http://wordpress.org/download/release-archive/.
  4. Back up the database. The easiest way to do this is to install the WP-DB-Backup plug-in. After this five minute install an admin can then create and save this backup of ALL tables.
  5. ZIP the database backup and use phpMyAdmin to restore the database to the new server. Instructions may be found here on http://codex.wordpress.org/Restoring_Your_Database_From_Backup
  6. ZIP the entire active site. This is then uploaded to the new site to replace the default WP files used during the install. (Some folks have said to skip the initial install of WordPress and rely on the database and file transfer for the install. If this works for you – great. I like the initial setup first to confirm that the dB is setup and the software works properly. This helps identify other issues such as the server itself not being configured properly for WordPress. Sure, this is wiping out the initial install. But the confirmation of the WordPress compatibility with the server is nice.)
  7. The site will then by default be set to function at the live site domain. The site needs to be checked before the domain name is transferred. Either set the internal DNS for the server and computer connection to the new server or enter the dB and change the values to one that will work to check the site.
  8. Review the site and check for any errors. The only error I have ever run across is that occasionally the path information to the files on the server need to be adjusted in the dB. This is a very quick task for someone familiar with myPHPAdmin.
  9. Switch over the DNS to direct traffic to the new server.
  10. Adjust the new servers Apache configuration to direct the domain traffic to the WordPress directory. This is usually done via a control panel.
  11. Adjust the WordPress settings to serve up the site under the new domain. This is done within WordPress’ main settings page.
  12. Check site, Feedburner and Google Analytics and other external hooks.
  13. Once comfortable with the new site, the old site may be decommissioned.

Option 2: In this option the client does not have to mess with the database items at all. I have found that this works well with sites that do not have too many posts.

  1. Setup up a Web server with mySQL and Apache. If a hosting recommendation is required then I recommend WestHost that can provide this service for less than $35.00 per month.
  2. Setup a mySQL database to match the database name, ID and password in use by the currently active WordPress installation. This is found by looking in the active site’s wp-config.php file.
  3. Install the version of WordPress currently in use for the active site. To simplify matters, copy the wp-config.php file from the active site for use on the new site. It is not uncommon for the site to be operating under old versions of the software. Archived versions are available for download at http://wordpress.org/download/release-archive/.
  4. Set up the links (blogroll) items on the new site.
  5. Zip the entire content of the entire active site. This is then uploaded to the new site to replace the default WP files used during the install.
  6. Export all content using the built-in export utility and deliver the XML export file to the client. This should end the use of the old server.
  7. Uses the built-in import function to import the provided XML file. They select to create author accounts as prompted by the import.
  8. Adjust user accounts as needed.
  9. Review the site and resolves any errors.
  10. Switch over the DNS to direct traffic to the new server.
  11. Adjust the new servers Apache configuration to direct the domain traffic to the WordPress directory. This is usually done via a control panel.
  12. Adjust the WordPress settings to serve up the site under the new domain. This is done within WordPress’ main settings page.
  13. Check site, Feedburner and Google Analytics and other external hooks.
  14. Once comfortable with the new site, the old site may be decommissioned.

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in