【问题标题】:MySQL replace not working when replacing Wordpress database content替换 Wordpress 数据库内容时 MySQL 替换不起作用
【发布时间】:2016-09-20 07:35:56
【问题描述】:

我正在将 Wordpress 位置移动到同一服务器上的其他文件夹,并且我在其他站点上使用 MySQL 替换方法没有问题,但这次它不会替换数据库内容。

我正在使用这些 (https://wpbeaches.com/updating-wordpress-mysql-database-after-moving-to-a-new-url/)

UPDATE wp_options SET option_value = replace(option_value, 'http://www.oldurl', 'http://www.newurl') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET guid = replace(guid, 'http://www.oldurl','http://www.newurl');

UPDATE wp_posts SET post_content = replace(post_content, 'http://www.oldurl', 'http://www.newurl');

UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://www.oldurl','http://www.newurl');

当然,我已经替换了表名和值,但结果仍然是“0 行受影响”并且没有“匹配的 x 行”。

怎么了?

【问题讨论】:

  • 什么是错误?
  • 实际上没有错误,但它不会像预期的那样影响任何行。
  • a) 您可能使用了错误的网址。检查您当前的网址:select * from wp_options where option_name = 'home' OR option_name = 'siteurl' b) 您至少错过了 2 个字段(wp_posts.post_excerptswp_links.link_url)。您可能想要使用 271 个 wordpress url 转换器插件之一。他们通常有一个更新的表和字段列表来改变(你得到你的代码的帖子已经一年多了)
  • “旧网址”是什么意思?是的,可能会丢失一些表和字段,但它仍然可以工作,因为它应该匹配记录。

标签: mysql wordpress


【解决方案1】:

问题解决了。我使用了来自interconnectit.com 的“PHP 中的数据库搜索和替换脚本”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-09
    • 2014-11-01
    • 2016-02-20
    • 2017-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多