wordpress迁移

从一个地方搬到另一个窝,我必定会带着我的Wordpress,这就涉及到博客的迁移了。首先申明,该文非原创,放在这里主要是为了方便自己日后再次需要转移博客时,能很快锁定文章目标。

这篇文章主要介绍怎样将wordpress从一台服务器移动到另一台服务器。假定我们使用服务器的IP作为访问地址,现有服务器A(11.11.11.11)和服务器B(22.22.22.22)。

本例,我们将wordpress从 http://11.11.11.11 转移到http://22.22.22.22/portal下。

移动wordpress主要涉及到以下两个方面:

1)代码的转移

代码的转移比较简单,直接将我们的wordpress源码从服务器A转移至服务器B的相应目录下(portal)。使用ftp进行上传部署即可,然后根据实际情况修改wp-config.php中连接数据库的相关信息。

2)数据库的转移

数据库的转移:

·创建数据库的备份: 

mysqldump -u username -p database_name > yourdatabase.sql

以上命令,会创建一个database_name的备份,将博客的相关信息存入yourdatabase.sql中。

·还原备份的数据库

  首先,需要创建一个数据库,在创建数据库时最好指定数据库的编码,这里使用的是utf8:

CREATE DATABASE database_name
DEFAULT CHARACTER SET utf8 
DEFAULT COLLATE utf8_general_ci;

然后,就可以导入我们之前创建的数据库备份:

 mysql -u username -p database_name < yourdatabase.sql

这样,我们的数据库就已经转移了。

·更新数据库表中的URL信息

更新wp_options表中的以下两处:option_name = siteurl 和 option_name = home, 然后才可以访问首页。

update wp_options set option_value='http://22.22.22.22/portal' where option_name='siteurl';
update wp_options set option_value='http://22.22.22.22/portal' where option_name='home';

更新wp_posts表中的guid字段,post_content字段,post_excerpt字段,替换其中的URL。这样可以使得图片和链接的地址更新。

mysql> update wp_posts set guid = replace(guid,'11.11.11.11','22.22.22.22/portal'); 
mysql> update wp_posts set post_content= replace(post_content,'11.11.11.11','22.22.22.22/portal'); 
mysql> update wp_posts set post_excerpt= replace(post_excerpt,'11.11.11.11','22.22.22.22/portal');

如果,还要其他插件中存储了URL,也需要进行REPLACE处理。 至此,您的wordpress成功迁移到http://22.22.22.22/portal。

posted @ 2013-11-03 10:49  JeromeBlog  阅读(1717)  评论(0编辑  收藏  举报