首页 > 代码库 > MySQL用Load Data local infile 导入部分数据后中文乱码
MySQL用Load Data local infile 导入部分数据后中文乱码
今天在两台MySQL服务器之间导数据,因为另一个MySQL服务器是测试用的,差一个月的数据,从现有MySQL服务器select到一个文件,具体语句是:
select * from news where ine_time>="2010-02-01" and ine_time <"2010-03-01" into outfile "/tmp/newsdata.sql";
然后scp到另一个MySQL 在线扑克室 Server上导入到对应的表中,具体语句如下:
load data local infile "/home/lsanotes/newsdata.sql" into table news;
然后刷新访问这台数据库的web页面,发现刚导进来的这一个月的数据都是乱码,而以前其它月份的则正常,用show create table news;查看发现两个服务器中的news表都是utf8,奇怪,把导出的数据转换成utf8,再导入问题仍旧。
后来在数据库中查看刚刚导进的这一个月的数据时,没有执行set names utf8;就可以正常查看中文而不乱码,而其它月份的必须先执行set names utf8;才能看中文而不乱码,但是当我执行过set names utf8;后再看刚刚导进的这一个月的数据却是乱码,看来导进来的数据并不是utf8格式。最后的解决方法是:
load data local infile "/home/lsanotes/newsdata.sql" into table news character set utf8;
最后Web页面显示正常.
http://www.lsanotes.cn/load-data-local-infile
MySQL用Load Data local infile 导入部分数据后中文乱码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。