老子终于把博客升级到2.6了
这念头蠢蠢欲动已经大半年了吧,自从2006年第一次用Wordpress架设博客到昨天为止,我都只从最开始用的2.1.3升级到2.2,两年期间只升级过一次,而现在官方出的程序版本早已经跳跃了无数个级别,现在最新的已经是2.6.3了,呵呵,当然,你会觉得升级是否有必要因为要大费周折,而且还有不少风险,一旦操作失误又刚好忘记备份数据,那损失将是巨大的,不过对我来说,现在升级的唯一原因我想就是Wordpress版本和Windows Live Writer之间的配合问题,对我来说,最重要的一点是2.2的版本下用WLW是无法使用Style的,就算你在Draft的时候用了Margin等CSS来控制图片等,一旦发表后这些格式就会凭空消失,一直没搞清楚到底问题出在哪里,希望这一次更新到2.6后能解决这个问题,而成功与否就看这个帖子发表后的效果了。
OK,其他的不对说了,说说升级的经历吧。总体而言,升级是很简单的操作,前提是你懂一些数据库的操作,而更好的则是你能深刻领会到Wordpress工作的原理,也就是各数据表的作用,模板以及插件等的工作方式等,就问题不会大了。
首先备份数据库这是必须做的,否则千万别鲁莽的直接去操作数据库,一旦出了问题会让你完全地无比后悔,而且再没办法恢复。呵呵。怎么操作就不多说了,Mysql操作起来确实比access复杂得多。
接下来,就是一步一步的升级操作,其实这里指的升级全部是指的对数据库的升级,因为各个版本的不同包含文件的差别,更多的则是数据库结构的不同,所以是十分重要的。曾经我想从2.2直接一步升级到2.6,后来一想还是觉得不妥当,因为从2.2系列到2.3系列变化是最大的,而我这次升级过程出现问题最多的也就是这个步骤,2.3的数据库结构做了不少改变,最突出的我想应该算是对于Categories的处理,原来是用专门的Categories表来存放各种分类,2.3就已经取消了这个表,而用Terms表来代替,曾经尝试过几次从2.2升级到2.3都失败,就在于升级以后我所有帖子的分类信息全部丢失,变为了无分类,看起很是郁闷。昨天最开始升级转化的时候也是出现这个问题,后来才仔细研究了一下这两个表之间的关系和区别,终于发现问题所在。因为我的数据库是从最开始就一直备份下来,就算重新安装,导入的数据也是和原来一样的,所以曾经尝试升级的时候就已经自动生成了Terms相关的3个表,这3个表其实在2.3之前的版本是根本用不到的,原来一直不知道所以就一直都保留着,现在看起来我尝试这么多次都失败的罪魁祸首就是这3张表了,因为2.3对于分类的特殊处理,程序在升级数据库时会自动转化原来Categories表中的数据到Terms表里,正常情况下,Terms表是会在升级过程中自动生成的,而我的数据库里却早就有了这三个表,而且里面的数据是设定为不能重复,所以当升级程序再次尝试转化分类时就会全部报错,也就意味着老的分类信息根本没有正确的转化到Terms表里,直接体现到帖子里就是所有文章分类丢失。
找到问题所在要解决就容易了,清理了程序运行不需要的数据表,包括一些插件生成的表也被我都清理了,同时也删了Terms的三个表,再次运行Upgrade.php,转化正常同时各日志也没受影响,呵呵,到这一步其实已经成功了一大半了,然后下载2.5,覆盖文件后直接升级数据库,一切正常,最后下载2.6覆盖后升级,搞定。
主题外,必须要推荐几个强大的工具哈,呵呵,一个是我曾经推荐过的APM Express, 这是一个集成封装好的PHP+Apache+Mysql的套装,绿色版,非常方便使用,下载下来解压缩,运行就能搭建起非常高效的平台供你调试使用。另外一个强大的,就是phpmyadmin了,呵呵,最牛的Mysql数据库管理工具,至少对于我这种不想用命令行操作mysql的人来说无疑是最适合的。这一次的升级能够成功,也是我先在本地测试了很多次后才有的。呵呵。
相信这一次的重大更新之后再升级到新的版本也应该很简单了,呵呵。希望如此吧~


Eric:
Posted on November 3rd, 2008 at 11:33 AM
哈哈,终于能用Writer直接发表带Style的日志了,不容易啊。这对我来说太重要了,嘿嘿,喜欢喜欢,至少这次大张旗鼓的升级还是有明显效果哈~
Eric:
Posted on November 3rd, 2008 at 12:06 PM
Useronline 插件升级咯,可以直接看到游客的IP地址,哈哈,太爽了!
Eric:
Posted on November 3rd, 2008 at 2:31 PM
新的版本内置了Tags,这个是我等下要增加的,另外也内置了头像功能,呵呵,看等下添加上来看看效果如何吧。应该也不错~
Eric:
Posted on November 3rd, 2008 at 3:16 PM
呵呵。Gravatar功能搞起了哈,效果不错,也是WP内置的~
Eric:
Posted on November 3rd, 2008 at 3:31 PM
继续补充一个Tips: 从上面地址下载到的APM Express4是必须放到特定文件夹里,确保绝对路径里不能包含空格,否则Apache会启动失败,真是很奇怪的问题,但是确实只要复制到某一磁盘根目录就绝对没问题。呵呵。