mysql编码转换工具_mysql编码转换办法之一(转载)

这是我之前用的转编码方法:

使用phpmyadmin打开后,是乱码,但是查询出来,页面显示是正常的。(mysql使用utf8编码,数据库也是utf8编码。)

前台页面使用的是默认编码 gb2312,链接数据库后,也没有使用 set names

既然页面正常,那就好办,先把数据查出来,然后改写成sql语句,把sql当作文件来保存。

sql语句被保存后,这个时候还不能用,先把sql文件打开,用editplus另存为 utf8 格式。

用phpmyadmin 新建一个相同结构的数据库(不包括数据)

再使用phpmyadmin,载入这个sql文件,直接运行。或者是把sql语句复制到phpmyadmin中运行也行(但是文件太大的时候就太慢了。)

之前一直用这个方法转换mysql 的编码 从Latin1 到 UTF8 ,这次有一个70多w条的数据库,要把数据的编码从latin1转换到utf8,没想到使用这个方法,随着记录的增多,数据的插入越来越慢。

当把新表的主键删掉后,速度有了明显的变化,但新的数据条数反而比原来的还要多,真实BT,找不到原因,只好放弃采用删除主键的办法。(主键和索引对mysql的插入、修改、删除速度有影响。)

问了一个朋友后,发现mysqldump 的时候加上-compatible=mysql40 参数,就可以指定编码了

mysqldump -uroot -proot -compatible=mysql40 -default-character-set=utf8 d5s_data > d5s.sql

mysqldump  wy > wy2.sql  导出

mysql wy

mysqldump --default-character-set=utf8 wy > wy1.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值