sql替换wordpress数据库

时间:2011-09-12 19:09:16

标签: sql replace phpmyadmin

我正在将wordpress安装转移到新服务器和新域。我移动了所有文件,并创建了一个新数据库并更改了wp-config.php中的设置以反映这一点。但是,在导入所有内容时,它仍然指向我之前的域。我希望切断与以前域名的所有联系,所以我想做一个SQL查询(通过phpMyAdmin)来替换旧域的每个实例并将它们更改为我的新域。

我偶然发现了以下情况:

UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://oldlink.com', 'http://newlink.com');

我尝试用wp_table替换*个实例,但会抛出语法错误。你们这些优秀的聪明人能帮助我改变这个问题吗?谢谢!

1 个答案:

答案 0 :(得分:0)

通过SQL更新它会带来太大的痛苦,因为你有大约13个表(如果你有插件的话多了),每个表都有很多列。

我有两种方法可以做到这一点

如果你有插件创建了自己的标签:

将entiredatabase导出到SQL文件中,在文本edior中打开并在以下内容中进行查找和替换

oldomain.com/path/to/wordpressinstall

newdomain.com/path/to/install

您可能只需要olddomain.com和新的domain.com而不需要任何子文件夹。它的超级非常重要,你不要包含http://或www之类的内容以及最后的任何尾部斜杠。这将匹配100%的网址,无论它们是否如下所示:

http://domain.com/wp-content/lol.jpg www.domain.com www.domain.com /

完成后,删除旧数据库并导入此数据库。

如果只是一个简单的wordpress安装

在wp-config文件中设置网址:

define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');

现在您已经对网站网址进行了硬编码,您可以登录到您的新网站,下载一个名为搜索和替换的插件,并使用漂亮的GUI界面运行上述搜索/替换。