1、导出表结构
mysqldump -uroot -p --default-character-set=gbk -d [数据库名] >dbdesc.sql
注:--default-character-set=gbk 表示设置以什么字符集连接
-d 表示只导出数据表结构,不导出数据。
2、手工修改dbdesc.sql中表结构定义中的字符集为新的字符集
3、请确保你的表中的记录不再更新,导出所有记录
mysqldump -uroot -p --opt --no-create-info --extended-insert --default-character-set=latin1 [数据库] > data.sql
注:--default-character-set=latin1 现有数据库的字符集,防止导出的文件出现乱码
--opt 快速导出,对于数据非常多的库非常有用
4、打开data.sql 将set names lantin1(根据情况而定) 修改成 set names gbk(新的字符集)
5、使用新的字符集创建新的数据库
create database [新的数据库名] default charaset gbk;
6、创建表执行dbdesc.sql
mysql -uroot -p [新数据库名]< dbdesc.sql
7、导入数据,执行data.sql
mysql -uroot -p [新数据库名]< data.sql