模拟讲Latin1字符集的数据库修改为GBK

1)导出表结构

mysqldump -uroot -p --default-character-set=gbk -d databasename> createtable.sql
  • –default-character-set=gbk //以gbk字符集连接
  • -d //导出表结构,不导数据

2)手工修改createtable.sql中表结构定义的字符集为新的字符集

3)导出所有记录

mysqldump -uroot -p --quick --no-create-info --extended-insert --default-charset=latin1 datatbasename> data.sql
  • –quick //转存较大表 一次检索一行,不是一次检索所有行,输出前缓存在内存中
  • –extended-insert //使用包括几个values列表的多个insert语法,转储文件小,速度快
  • –default-charset=latin1 //按原有编码导出,中文可见不会乱码

4)打开data.sql, 将SET NAMES latin1 修改为 SET NAMES gbk

5)使用新的字符集创建新的数据库

create datatbase databasename default charset gbk;

6)创建表,执行createtable.sql

mysql -uroot -p datatbasename< createtable.sql

7)导入数据,执行data.sql

mysql -uroot -p dataabasename< data.sql
  • 目标字符集要比源字符字库大,最好是源字符集的超集,比如GBK > GBK2312

相关文章:

  • 2022-01-18
  • 2022-01-25
  • 2021-06-21
  • 2022-12-23
  • 2022-02-07
  • 2021-11-28
  • 2022-02-12
  • 2022-12-23
猜你喜欢
  • 2021-06-19
  • 2021-08-14
  • 2022-02-13
  • 2022-12-23
  • 2021-09-20
  • 2022-02-08
  • 2021-06-17
相关资源
相似解决方案