WordPress Going to Installation Wizard, Even Though WordPress is Installed

May 31st, 2013 - Posted by Steve Marks to MySQL, PHP, Web Development.

I tend to find myself installing, moving and updating lots of WordPress sites as part of my day-to-day routine. When moving sites between servers, or switching the code to a live environment, I sometimes come across a problem that has previously resulted in me re-installing a fresh copy of WordPress.

The Problem

After moving a WordPress database to a different location, the first thing I do is update the home and siteurl values in the wp_options table to reflect the new domain.

There have been numerous times however when, having gone to visit the moved site in a browser, I then get redirected to the WordPress Installation wizard, as if the database doesn’t exist at all.

After coming up against this a few times I decided to do some further digging and was amazed at how easy the solution was.

The Solution

It’s easy to resolve this. The problem in my cases was that the wp_options table had become corrupt and needed repairing and optimising.

To do this in phpMyAdmin, you can follow the steps below:

1. Login to phpMyAdmin and navigate to the database in question.

2. With the list of tables visible, check the tickbox next to the ‘wp_options‘ table.

3. From the dropdown at the bottom, select ‘Repair Table‘.

4. Repeat steps 1 and 2 but instead then select ‘Optimize Table‘.

Visiting the website in a browser should now present you with the correct site, as opposed to the installation wizard.

This entry was posted on Friday, May 31st, 2013 at 11:43 am by +Steve Marks and is filed under MySQL, PHP, Web Development. You can follow any responses to this entry through the RSS 2.0 feed.

Fear not, we won't publish this

Comments (1)
  1. Please note that within the standard installation of WordPress no integrity between the tables is enforced e.g. between posts and comments. If you are creating a plugin or extension that manipulates the WordPress database, your code should do the housekeeping so that no orphan records remain in the tables e.g. by removing records in other tables with a set of SQL commands when foreign keys are deleted (Don’t forget to remind users to backup before such operations).