Latest Articles

About this entry

This entry was posted on Friday, February 27th, 2009 at 02:20 and is filed under Journal. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

猪头惊魂3小时

刚才的3个小时,可能是2009年以来,我经历过的最惊心动魄的3个小时。

垂涎 wordpress 2.7 系列很久了,特别是几款别致的 theme,直叫人心里痒痒。3个小时前总是下定决心升级blog,顺手把之前的 theme 换掉,央求老公,结果被鄙视——“你怎么升级那么频繁?有个小版本号你就升级。”拜托,我之前用的是2.62,现在人家都发到2.71了好伐?

感觉求人没戏,只好自己来。说实在的,自从用 worpress 做独立 blog 至今,我还真没有自己安装或者升级过。一是大多数时候自己没有服务器和数据库权限,二是自己确实对这东西没天份、看着一堆文件加无敌命令行就要头痛。今天咬牙赤膊上阵,也算有些赌气的意味。惨就惨在照着官网的升级三步曲来过之后,发现自己的 blog 内只有英文、数字和 ? 了……飙血……

此时已是西元2009年2月27日0点51分。呆呆望着满屏的问号,心如刀绞,顿感多年心血终为泡影。这种时候也顾不得赌气,跑进卧室摇醒老公:“我把数据库搞坏了,你帮我看下好不?”

“……嗯?先睡觉好不……”

“……你睡吧,我自己再搞搞。”

下午看的《The Longshots》中有这么一句台词:有时候,人们得学会自己擦屁股。

此时唯一可以告慰自己的是,数据库有备份。用 Eclipse 打开 sql 文件,中文可以正常浏览。服务器默认编码是 UTF-8,而数据库中的表都成了 latin1-swedish。祭出古狗大神,然后研究了一下保存在桌面上的备份用的 2.6 版 wp-config.php 文件,结果发现问题居然是原先 wp-config.php 中的 define('DB_CHARSET', 'utf8') 被注释掉,导致 WordPress Database Backup 插件直接将数据库导出为 latin1。当年这个插件就因为多非拉丁文支持的问题搞得无数人需要手工 hack 才能使用,据说新版添加了识别功能,可是默认往 latin 的方向打包始终有点……

先试着在 phpMyAdmin 下手工调整表的编码,在点击 15 分钟鼠标后抬头发现一个 comments 表还没搞定就直接将鼠标pia飞。

好在使用中文的 blogger 实在多,如我这样的猪头也不是一只两只,参照先烈的足迹,用 Eclipse 把之前备份的 sql 文件中的 latin1 全都替换为 utf8,然后将文档保存为 unicode 格式。因为 sql 文件尺寸超出了 phpMyAdmin 的文件上传限制,又用 7-zip 将修改好的 sql 文件打包成 gzip。为防止不必要的问题索性将之前乱码掉的表全部 drop,干干净净把新的数据库文件上传,搞定~撒花~ °.·☆(≥◇≤)☆·∴°

教训——

  1. 不能对自己很重要很常用的东西一无所知
  2. 出现问题,先不要急着灰心,看看手头有没有补救措施更靠谱
  3. 知之为知之,不知google之。
  4. 曲线有时候是捷径

Tags: ,

Comments are closed.

  1. Chris says:

    呵呵,我还是用 2.3.3。