http://www.v2ex.com/t/137724

如果你希望让你的网站或者 App 支持 Emoji,那么在初次设置 MySQL 时,有一些细节你需要知道。

Emoji

Emoji 字符的特殊之处是,在存储时,需要用到 4 个字节。而 MySQL 中常见的 utf8 字符集的 utf8_general_ci 这个 collate 最大只支持 3 个字节。所以为了能够存储 Emoji,你需要改用 utf8mb4 字符集。

在创建表时,用类似这样的语句:

CREATE TABLE `tbl` (...) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci; 

MySQL 版本

对 utf8mb4 字符集的支持是 MySQL 5.5 的新功能,所以你需要确保你使用的 MySQL 版本至少是 5.5。基本上,2014 年以后的新项目都应该直接上 5.6 了。

MySQL 备份和导入

在启用了 utf8mb4 字符集之后,备份和导入时就不能再用默认参数了。

用 mysqldump 备份时,需要加入:

mysqldump --default-charater-set=utf8mb4

而在恢复备份或通过程序连接时,需要在每次连接打开之后发送下面这条 SQL 指令:

SET CHARSET utf8mb4

转载于:https://www.cnblogs.com/kenshinobiy/p/4561710.html

关于用 MySQL 存储 Emoji相关推荐

  1. linux mysql emoji_Linux宝塔面板MySQL存储emoji,非服务器命令方法

    很多站长做好网站后,发现在文章中插入emoji表情符号,保存后会变成"?".我也遇到了相同的问题,百度了很久,都是较怎么用Linux远程命令来操作,将utf8改成utf8mb4,对 ...

  2. Sequelize+MySQL存储emoji表情

    一.原因 mysql的utf8编码的一个字符最多3个字节,但是一个emoji表情为4个字节,所以utf8不支持存储emoji表情.但是utf8的超集utf8mb4一个字符最多能有4字节,所以能支持em ...

  3. mysql存储emoji表情方式

    本文为沉默王二原创作品,欢迎转载,请保留出处,微信ID:qing_geee 本文链接: https://blog.csdn.net/qing_gee/article/details/102781789 ...

  4. mysql存储emoji表情_MySQL中支持emoji表情的存储

    由于需要实现emoji表情评论的功能,所以数据库需要支持emoji表情的存储,根据查询的资料最终实现了该功能,现将实现的过程以及过程遇到的一些问题记录下来,供大家参考和交流. mysql的utf8编码 ...

  5. mysql 存储emoji表情

    1.原则 如果要实现存储emoji表情到MySQL实例,需要客户端.到MySQL实例的连接.MySQL实例内部 3 个方面统一使用或者支持 utf8mb4 字符集. 2.三个条件说明 2.1 客户端 ...

  6. 【已解决】Mysql 存储 emoji 表情报错 Incorrect string value: ‘\xF0\x9F\x98\x82\xF0\x9F

    mysql 库.表.字段 字符集从 utf8 改为 utf8mb4 校验规则改为 utf8mb4_unicode_ci

  7. 如何使用MySQL存储Emoji表情,UTF-8和UTF-8MB4字符编码有何区别?

    前言 这篇应该算个小知识吧.平时习惯在写文章的时候都喜欢用 windows的emoji表情(win+.)即可弹出,就如

  8. 解决mysql存储emoji表情唯一索引报错问题

    问题发现: 1.正常上班的一天,突然间有运营同事反馈,我们在添加数据的时候,发现添加了

  9. emoji表情mysql报错_MySql存储emoji表情报错的处理方法

    mysql存储emoji表情报错的处理方法:更改编码为utf8mb4 uft-8编码可能2个字节.3个字节.4个字节,而MySql的uft-8只支持3字节的数据,而移动端的表情数据是4字节的字符.如果 ...

最新文章

  1. 使用Zabbix自带MySQL模板监控MySQL
  2. 优化 Azure 成本,实现财务目标
  3. 产品认知:看清事物本质的核心思维——效率思维
  4. enumerate在python中是什么意思_python中enumerate什么意思
  5. docker 启动 停止容器
  6. mysql触发器不能alter
  7. Python3+Selenium3自动化测试 - 实例 - 登录QQ邮箱并自动发送邮件
  8. 俄黑客入侵100多万部安卓手机 盗取500多万卢布
  9. 这几个专业考上研再考公务员更有优势!
  10. 企业招聘面试十大之怪现状
  11. 经济观察报:豆瓣的创业故事
  12. [原创] 简单的几个步骤`皮肤变得晶莹剔透
  13. 微信小程序 图片旋转后上传
  14. xgboost在LTR(学习排序)中的应用
  15. liunx启动时:initramfs unpacking failed:write error
  16. 【算法导论06】递归算法-perm算法
  17. 曲率(Curvature)
  18. 五年程序员工作小结技巧
  19. 【Android】多功能二维码实现思路,自动连接WI-FI
  20. 【人脸识别】千变万化的人脸识别 REID损失函数总结

热门文章

  1. 查看linux网络带宽
  2. centos ping不通内网 网关 外网 域名等以解决 通过设置为动态IP(启用dhcp协议)
  3. html限定输入的内容,HTML中限制input 输入框输入内容
  4. android bu,Android请求权限之不再询问或禁止不再提示
  5. 《Go语言程序设计》读书笔记(七) 包
  6. Laravel源码解析之事件系统
  7. 关于MySQL的死锁问题
  8. 关于Redis的几个问题
  9. python来进行社团划分
  10. GROUP BY你都不会!ROLLUP,CUBE,GROUPPING详解