繁体   English   中英

通过Google Spreadsheet查找和替换数据库数据?

[英]Find and Replace Database Data by Google Spreadsheet?

我们有一个非常庞大的Wordpress数据库,其中包含数百篇文章。

我们有一个Google电子表格,其中包含成千上万个需要替换为新链接的链接。 每个链接都是唯一的。 这是一个两列的电子表格,第一列是需要替换的链接,第二列是新链接。 该电子表格包含数千行,因此我们正在尝试寻找一种自动化的方法。

看到每个链接都是唯一的,因此正则表达式无法完成任务。 有没有一种方法可以使用电子表格作为指导在我们的数据库中进行查找和替换?

非常感谢!

一个用于查找/替换在PHPMyAdmin或Adminer之类的数据库工具中使用的示例基本MySQL查询,它是:

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

该命令仅在wp_posts表中查找旧URL的确切字符串,然后将其替换为新URL。 (您可能还需要搜索wp_postmeta和options表)。

您可以使用文本编辑器工具或电子表格将所有更改开发为UPDATE查询列表并运行它们。 由于所有URL都是唯一的,因此这可能是您唯一的选择。

在运行它们之前先进行一些测试。 备份数据库并在该站点的副本上运行查询。 一次运行所有查询可能会使PHP或MySQL超时并杀死您的服务器。

最好先清理Wordpress帖子修订版本的数据库,因为如果您有数百个帖子,查询也会处理这些帖子,并且一次运行所有查询可能会超时并杀死服务器。

DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'

然后优化数据库工具中的所有表。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM