备份好的sql文件,直接用记事本方式打开,中文显示正常,还原导入后,发现中文是乱码。真蛋疼。
解决方法:
step 1:还原时建立数据库和表都为utf8格式(建议utf8,当然gbk或者gb2312也行)
复制代码 代码如下:
CREATE DATABASE `shegongku` DEFAULT CHARACTER SET utf8
CREATE TABLE `members` (
`uid` mediumint(8) unsigned NOT NULL default '0',
`username` varchar(15) NOT NULL default '',
`password` varchar(40) NOT NULL default '',
`salt` varchar(16) default NULL,
`email` varchar(60) NOT NULL default ''
) ENGINE=
myisam DEFAULT CHARSET=utf8;
step2,将sql文件的编码转换下,转成utf8格式,可以notepad2,也可以用UltraEditor进行转换,再在第一行sql文件的添加一行 set names utf8 保存。
step3,导入。一般就不会出现乱码了,这时如果在终端cmd下再次查询发现还是乱码的话,就不是数据库的问题,而是显示的问题了。此时,在终端里输入 set names gbk后中文可以正常显示了。