论坛首页 综合技术论坛

mysql字符编码问题

浏览 2294 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-10-06   最后修改:2009-10-06
许多人可能会有这样的经验:明明全部系统都以 UTF-8 设置,但是用 phpMyAdmin 去看数据库时,发现中文字仍然是乱码。

若有发生这种情况,大多因为安装数据库时候指定默认的存储编码是latin1。因为虽然 mysql 本身及网页都是 utf-8,但是mysql却用 latin1 将数据储存起来,因此是 utf-8 数据被以 latin1 的格式储存进数据库。

1、知道了原因解决办法就有了。就是把数据以latin1的编码导出,这样导出的数据就不会乱码,再以utf-8导回数据库。

mysqldump --all-databases --default-character-set=latin1 -u root -p > backup.sql


2、修改 backup.sql 文件首页的:

/*!40101 SET NAMES latin1 */;  成为   /*!40101 SET NAMES utf8 */;

CHARSET=latin1   成为   CHARSET=utf8

3、导回数据
mysql -u root -p < backup.sql
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics