zoukankan      html  css  js  c++  java
  • MySQL utf8mb4 字符集:支持 emoji 表情符号

    ㈠ 序言

    为了应对无线互联网的机遇和挑战、避免 emoji 表情符号带来的问题、

    涉及无线相关的 MySQL 数据库建议都提前采用 utf8mb4 字符集

    这必须要作为移动互联网行业的一个技术选型的要点

    ㈡ 限制

    需要 >= MySQL 5.5.3版本、从库也必须是5.5的了、低版本不支持这个字符集、复制报错

    ㈢ 简要步骤

    以下是一个未升级到 5.5.3 的配置步骤:

    ① 备份数据库

    ② 升级 MySQL Server 到 v5.5.3+

    ③ 修改 database、table和column字符集

    For each database:ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;# For each table:ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;# For each column:ALTER TABLE table_name CHANGE column_name column_name VARCHAR(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;# (Don’t blindly copy-paste this! The exact statement depends on the column type, maximum length, and other properties. The above line is just an example for a `VARCHAR` column.)

    ④ 修改 my.cnf

    [client]
    default-character-set = utf8mb4

    [mysql]
    default-character-set = utf8mb4

    [mysqld]
    character-set-client-handshake = FALSE
    character-set-server = utf8mb4
    collation-server = utf8mb4_unicode_ci
    init_connect='SET NAMES utf8mb4'

    ⑤ 重启 MySQL Server、检查字符集

    mysql> SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
    +--------------------------+--------------------+
    | Variable_name            | Value              |
    +--------------------------+--------------------+
    | character_set_client    | utf8mb4            |
    | character_set_connection | utf8mb4            |
    | character_set_database  | utf8mb4            |
    | character_set_filesystem | binary            |
    | character_set_results    | utf8mb4            |
    | character_set_server    | utf8mb4            |
    | character_set_system    | utf8              |
    | collation_connection    | utf8mb4_unicode_ci |
    | collation_database      | utf8mb4_unicode_ci |
    | collation_server        | utf8mb4_unicode_ci |
    +--------------------------+--------------------+
     rows in set (0.00 sec)

  • 相关阅读:
    敏捷开发系列学习总结(5)——这几招搞定团队协同Coding
    敏捷开发系列学习总结(4)—Git管理工具sourcetree的安装
    Java基础学习总结(74)——Java常见笔试题及答案汇总
    iOS 极光推送
    iOS UI控件没有显示时的调试技巧
    iOS 搜索之拼音搜索
    iOS MJExtension框架之字典数组转模型数组
    iOS 单例
    iOS 切换键盘
    iOS 正则表达式
  • 原文地址:https://www.cnblogs.com/ahwu/p/3724973.html
Copyright © 2011-2022 走看看