刚从一个免费空间移到 dreamhost,导入备份的 .sql 文件后中文变乱码。我是个数据库外行,解决这个问题费了不少劲。
wordpress 2.0.3
插件 WordPress Database Backup 1.7
这个插件备份出来的是 utf8 编码的 .sql 文件,但文件里面建表的表达式写的全是 latin1 编码(与旧库有关?),在 phpmyadmin 界面里面导入,导来导去总是个乱码,那些编码把我弄糊涂了。反正我就认一个死理:全用 utf8 肯定没错:),最后解决的过程是,先在 phpmyadmin 界面里把所有能选编码的地方全用 utf8,然后:
1. phpmyadmin 里看到我的 database 编码是 latin1_swedish_ci,查到一条 sql 语句可以修改:
ALTER DATABASE mydb CHARACTER SET utf8;(默认的 collate 会是 uf8_general_ci)
2. 拿支持 utf8 的编辑器改备份文件,gvim (set enc=utf8)、gedit、editplus 都可以,把所有的 latin1_swedish_ci 改成 utf8
这时在界面里面浏览那些 Table,能看到中文了,可是 blog 还是乱码,还需要:
3. 修改 wp-includes/wp-db.php
找到这里
$this->dbh = @mysql_connect($dbhost, $dbuser, $dbpassword);在这句后面添加一句:
if (!$this->dbh) {
$this->bail(...);
}
$this->query("SET NAMES 'utf8'"); // ADD THIS LINE好了,大功告成。
致谢:秀楠爸爸(你可真是忙啊,这个菜问题要是亲自出马不几分钟就搞定啊:D)
参考:need Help: 往dreamhost上搬家出现乱码
God!wordpress 的 richeditor 真难用!
0 Comments so far