转转linux mysql编码
mysql编码问题
首先设置mysql的编码为utf8
在linux下修改3个my.cnf的1个/etc/mysql /my.cnf文件
找到客户端配置[client] 在下面添加
default-character-set=utf8 默认字符集为utf8
在找到[mysqld] 添加
default-character-set=utf8 默认字符集为utf8
init_connect='SET NAMES utf8' (设定连接mysql 数据库时使用utf8编码,以让mysql 数据库为utf8运行)
查看mysql编码 show variables like 'charac%'
都设置为utf8后,从文件导数据导数据表中,文件中文正常,编码也是utf8,发现在mysql查询时,中文都成乱码,
load data infile 'result1.txt' into table test character set 'utf8' fields escaped by '"' terminated by ','
optionally enclosed by '"' lines terminated by '\n' (flag,words,tappend,content); 导入数据时也指定utf8编码,中文成乱码很有可能时建表的时候表的编码不是utf8,此时可以重新删除表后重新建表,建表是指定编码
create table mytest (name varchar(20) not null default '') default charset utf8;