导出是,没有指定编码
方法一 phpmyadmin处理方式
检查php-mbstring是否有可装,没有安装上 yum -y install php-mbstring
打开phpmyadmin 中导出,再从phpmyadmin 导入是选取二制进(binary)
如果还不行,在my.cnf mysqld中加入 default-character=你的编码, 重启mysql 再试
方法二 mysqldump 处理方式
导出方式
mysqldump -u root -p --default-character-set=编码 数据名称> file.sql
例
mysqldump -u root -p --default-character-set=big5 discuss_chi> dis.sql
---------------------
导入方式
mysqldump -u root -p --default-character-set=编码 数据名称< file.sql
例
mysql -u root -p --default-character-set=binary -f discuss_chi<file.sql
也可以
mysql -u root -p --default-character-set=big5 -f discuss_chi<dis.sql
但是建议使用二进制,安全D!
方法一 phpmyadmin处理方式
检查php-mbstring是否有可装,没有安装上 yum -y install php-mbstring
打开phpmyadmin 中导出,再从phpmyadmin 导入是选取二制进(binary)
如果还不行,在my.cnf mysqld中加入 default-character=你的编码, 重启mysql 再试
方法二 mysqldump 处理方式
导出方式
mysqldump -u root -p --default-character-set=编码 数据名称> file.sql
例
mysqldump -u root -p --default-character-set=big5 discuss_chi> dis.sql
---------------------
导入方式
mysqldump -u root -p --default-character-set=编码 数据名称< file.sql
例
mysql -u root -p --default-character-set=binary -f discuss_chi<file.sql
也可以
mysql -u root -p --default-character-set=big5 -f discuss_chi<dis.sql
但是建议使用二进制,安全D!
方法三:
以原来的字符集为latin1为例,升级成为utf8的字符集。原来的表: old_table (default charset=latin1),新表:new_table(default charset=utf
第一步:导出旧数据
mysqldump --default-character-set=latin1 -h localhost -u root -B my_db --tables old_table > old.sql
第二步:转换编码(类似unix/linux环境下)
iconv -f gb2312 -t utf-8 -c old.sql > new.sql
或者可以去掉 -f 参数,让iconv自动判断原来的字符集
iconv -t utf-8 -c old.sql > new.sql
在这里,假定原来的数据默认是gb2312编码。
第三步:导入
修改old.sql,在插入/更新语句开始之前,增加一条sql语句:
"SET NAMES utf8;"
mysql -h localhost -u root -p my_db > new.sql