最近搬迁了我的BLog,从校内自己拥有的服务器转移到公网仅支持php/MySQL的空间,从WordPress2.0.4升级为2.0.5,MySQL从5.0.21转移到3.23.58,其间遇到不少麻烦,也学得一些技巧,下面简单谈谈心得。
一、数据库的备份
从自己的服务器上备份数据库,本以为是很容易的事情,谁知却总也无法在phpMyAdmin中导入,用另外的方法(后文提到)导入时,看到的所有文章都是乱码。后来发现,WordPress默认的数据库编码是UTF-8,而我用的图形化MySQL管理器Navicat MySQL默认的数据库联接虽然显示的是UTF-8,但事实上还是需要手动设置:Connection Properties-Advanced,把Use MySQL character set的钩去掉,然后选择Encoding为UTF-8,然后联接数据库,再开始备份(用Export Wizard)出来的SQL文件就不是乱码了。网上所说的修改SQL文件、用Word打开等等方法,全都是不必要的。
备份以下几个表
williamgates_categories williamgates_comments williamgates_linkcategories williamgates_post2cat williamgates_posts
建议不要备份其他表(会导致一些问题,建议你把其他表的内容自己手动在新blog中重新设置一下)。要注意的是,我的表前缀是williamgates,这个要在wp-config.php中设置
$table_prefix = 'williamgates_';
这是你一开始安装WordPress时选择的设置,一般来说没有我这种情况。
二、数据库的导入
要导入数据库的时候,碰到了新的麻烦。使用公网新空间提供的phpMyAdmin,运行SQL文件总是提示出错。这篇和这篇文章提供了解决办法。
事实证明,mysqldump出来的数据库是乱码(所以我用了图形管理端来备份),但是php代码写的导入功能还是非常有用的:
< ?php `mysql -uroot -pxxxxxx dbname <db.sql`?>
其中-u表示用户名是root,-p表示密码是xxxxxx,dbname是数据库名,db.sql是SQL文件的名称(注意在apache中运行的时候区分大小写,且前面的左尖括号后面必须有空格)
把这个php和sql上传到空间,再访问这个php的地址,很快就导入了,再看看自己的blog,嘿嘿,已经全都好了。
要注意的是,导入前建议清空我前面建议的几个表,其他表不要动,否则会导致用户管理上的某些奇怪问题(有时候没有第一行的表没法被写入)。
三、WordPress的重新配置和升级
首先要在导入数据库前安装好wp2.0.4(与迁移前同版本),由于我建议不要备份设置,所以所有的设置你都需要自己修改,注意这两个:
WordPress address (URI): Blog address (URI):
肯定是要修改的
然后在进行了上一步导入数据后,下载2.0.5(在我部署好之后8个小时就发布了新版,真不给面子),然后删除原来的文件,并且运行wp-admin/upgrade.php,就升级好了。原来的blog里的上载文件可以在升级前或者升级后复制过来,都一样的。
(升级教程见http://codex.wordpress.org/Upgrading_WordPress)
四、新空间的维护和备份
新的空间里,要使用WordPress Database Backup(在我的旧空间无法使用,原因不明),以后数据库导出就用它就可以了(最好不要用php代码和phpMyAdmin的导出功能。特别是在我的服务商提供的MySQL和phpMyAdmin版本都极为陈旧的情况下……)
另外建议时常备份自己的数据库、上载文件甚至整个blog,毕竟部署一次还是很痛苦的,特别是像我这样喜欢自定义的人(要注意备份theme下面自己捣鼓修改的页面文件)。
Related posts:
Recent Comments