How to update WordPress site urls properly
Run the following SQL query to update your WordPress database with a new site url.
UPDATE wp_options SET option_value = replace(option_value, 'OLD_URL, 'NEW_URL') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'OLD_URL, 'NEW_URL');
UPDATE wp_posts SET post_content = replace(post_content, 'OLD_URL, 'NEW_URL');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'OLD_URL, 'NEW_URL');
UPDATE wp_options SET option_value = replace(option_value, 'OLD_URL, 'NEW_URL');
It’s also possible to download a stand-alone project for this called Database Search and Replace.