• MySQL修改字符集


    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;
    

      

  • 相关阅读:
    nyoj 420
    nyoj 46 最少乘法次数
    ACM退役贴
    nyoj 187 快速查找素数
    多校4题目之Trouble
    nyoj 56 阶乘因式分解(一)
    nyoj 70 阶乘因式分解(二)
    nyoj 151 Biorhythms
    nyoj 97 兄弟郊游问题
    多校十 hdoj4393 Throw nails
  • 原文地址:https://www.cnblogs.com/weiwenbo/p/9099713.html
Copyright © 2020-2023  润新知