I've just migrated my site from a Windows/IIS hosted solution to a new hoster, IP Address etc. using Linux/Apache. I did all the usual things (database backup via export then import on the far side, files copied and uploaded etc.)
I'm now getting a problem where my site is reporting a number of 404 errors (not found errors) and when I try to view the posts in question the permalink looks wrong.
I went into the MANAGE POSTS page and tried to find the post using the SEARCH form, but it results in the following error:-
WordPress database error: [You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(wp_posts.post_status = 'publish' OR wp_posts.post_status = 'future' OR wp_posts' at line 1]
SELECT DISTINCT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts LEFT JOIN wp_term_relationships AS trel ON (wp_posts.ID = trel.object_id) LEFT JOIN wp_term_taxonomy AS ttax ON (ttax.taxonomy = 'post_tag' AND trel.term_taxonomy_id = ttax.term_taxonomy_id) LEFT JOIN wp_terms AS tter ON (ttax.term_id = tter.term_id) LEFT JOIN wp_comments AS c ON ( comment_post_ID = ID ) LEFT JOIN wp_postmeta AS m ON (wp_posts.ID = m.post_id) WHERE 1=1 AND (((wp_posts.post_title LIKE '%horse%') OR (wp_posts.post_content LIKE '%horse%'))) AND wp_posts.(wp_posts.post_status = 'publish' OR wp_posts.post_status = 'future' OR wp_posts.post_status = 'draft' OR wp_posts.post_status = 'pending' OR wp_posts.post_status = 'private') OR ( tter.slug LIKE '%horse%') OR ( c.comment_post_ID = wp_posts.ID AND c.comment_approved = '1' AND c.comment_content LIKE '%horse%') OR (m.meta_value LIKE '%horse%') ORDER BY wp_posts.post_date DESC LIMIT 0, 15
Can anyone shed some light on this for me please?