如何更改生产MySQL数据库库表的字符集

本文详细介绍了一种MySQL数据库从Latin1字符集迁移到UTF8字符集的方法。步骤包括:导出表结构、修改字符集设置、导出数据、创建新数据库、导入修改后的表结构和数据等。

以前学习mysql的时候,实验的笔记,今天整理的时候看到了,所以记录下,备忘

1、导出表结构

mysqldump -uroot -predhat12345 -S /data/3306/mysql.sock --default-character-set=latin1 -d kitty>kittytable.sql

说明:-d只导表结构


2、编辑kittytable.sql,将lantin1改成utf8

可以用sed批量修改


3、确保数据库不再更新,导出所有数据

mysqldump -uroot -predhat12345 -S /data/3306/mysql.sock --quick --no-create-info --extended-insert --default-character-set=latin1 kitty>kittydata.sql


4、打开kittydata.sql,将set names latin1修改成set names utf8


5、删除原有的库表及数据(需要慎重)


6、建库

create database kitty default charset utf8;


7、创建表,执行kittytable.sql

mysql -uroot -predhat12345 -S /data/3306/mysql.sock kitty<kittytable.sql


8、导入数据

mysql -uroot -predhat12345 -S /data/3306/mysql.sock kitty<kittydata.sql










本文转自 冰冻vs西瓜 51CTO博客,原文链接:http://blog.51cto.com/molewan/1940839,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值