首页 > 数据库技术 > 详细

MySQL修改字符集

时间:2018-05-28 14:10:43      阅读:242      评论:0      收藏:0      [点我收藏+]

MySQL数据库修改字符集,介绍一下修改的方法

1)系统工具iconv

#file filename
#mysqldump --default-character-set=utf8 >20180523xxx.sql
#file 20180523xxx.sql
#iconv -t utf8mb4 -c  20180523xxx.sql>20180523xxxutf8mb4.sql
#file 20180523xxxutf8mb4.sql

测试 mysqldump 支持where条件 先用小的文件先测试一下
#mysqldump  --where=”1=1 limit 10000”
#转码之前要看是什么编码,只有中文才需要转码

2)导出导入sed

二)导出导入---sed
1.导出表结构修改字符集设置
#mysqldump --default-character-set=utf8 -d databasename > #createtab20180523.sql
#sed -i s/CHARSET=utf8/CHARSET=utf8mb4/g  createtab20180523.sql 
2.导出表的数据修改字符集
#mysqldump --no-create-info databasename > data20180523.sql
#sed -i s/CHARSET=utf8/CHARSET=utf8mb4/g  data20180523.sql 
3.create database newdatabase default charset utf8mb4
#mysql  newdatabase < createtab20180523.sql
#mysql newdatabase  < data20180523.sql

3)alter table的方式

CREATE TABLE t1 (
  col1 CHAR(10) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  col2 CHAR(10) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL
) CHARACTER SET utf8;

#要修改字符集需要注意字段长度,及索引长度,alter table会锁表
ALTER TABLE t1
  DEFAULT CHARACTER SET utf8mb4,
  MODIFY col1 CHAR(10)
    CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL,
  MODIFY col2 CHAR(10)
    CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL;

  

MySQL修改字符集

原文:https://www.cnblogs.com/weiwenbo/p/9099713.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!