Mysql 需要支持 emoji 表情符号版本需要大于5.5.3,且字符集需要设置为utf8mb4 字符集。

utf8mb4和utf8到底有什么区别呢?原来以往的mysql的utf8一个字符最多3字节,而utf8mb4则扩展到一个字符最多能有4字节,所以能支持更多的字符集。

将Mysql的编码从utf8转换成utf8mb4。

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

停止MySQL Server服务

修改 my.cnf或者mysql.ini [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%' 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 |

+--------------------------+--------------------+

查看数据库字符集 mysql> select * from SCHEMATA where SCHEMA_NAME='ttlsa'; +--------------+-------------+----------------------------+------------------------+----------+

| CATALOG_NAME | SCHEMA_NAME | DEFAULT_CHARACTER_SET_NAME | DEFAULT_COLLATION_NAME | SQL_PATH |

+--------------+-------------+----------------------------+------------------------+----------+

| def | ttlsa | utf8mb4 | utf8mb4_unicode_ci | NULL |

+--------------+-------------+----------------------------+------------------------+----------+

查看表字符集 mysql> select TABLE_SCHEMA,TABLE_NAME,TABLE_COLLATION from information_schema.TABLES; +--------------------+----------------------------------------------------+--------------------+

| TABLE_SCHEMA | TABLE_NAME | TABLE_COLLATION |

+--------------------+----------------------------------------------------+--------------------+

查看列字符集 mysql> select TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,COLLATION_NAME from COLUMNS; +--------------------+----------------------------------------------------+--------------------------------------------+--------------------+

| TABLE_SCHEMA | TABLE_NAME | COLUMN_NAME | COLLATION_NAME |

+--------------------+----------------------------------------------------+--------------------------------------------+--------------------+

转换字符集语句 use information_schema;

SELECT concat("ALTER DATABASE `",table_schema,"` CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;") as _sql

FROM `TABLES` where table_schema like "DB_NAME" group by table_schema;

SELECT concat("ALTER TABLE `",table_schema,"`.`",table_name,"` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;") as _sql

FROM `TABLES` where table_schema like "DB_NAME" group by table_schema, table_name;

SELECT concat("ALTER TABLE `",table_schema,"`.`",table_name, "` CHANGE `",column_name,"` `",column_name,"` ",data_type,"(",character_maximum_length,") CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;") as _sql

FROM `COLUMNS` where table_schema like "DB_NAME" and data_type in ('varchar');

SELECT concat("ALTER TABLE `",table_schema,"`.`",table_name, "` CHANGE `",column_name,"` `",column_name,"` ",data_type," CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;") as _sql

FROM `COLUMNS` where table_schema like "DB_NAME" and data_type in ('text','tinytext','mediumtext','long

mysql 表情符号 用什么类型_使MySQL能够存储emoji表情字符的设置教程相关推荐

  1. mysql设置可以存表情_Mysql实例使MySQL能够存储emoji表情字符的设置教程

    <MysqL实例使MysqL能够存储emoji表情字符的设置教程>要点: 本文介绍了MysqL实例使MysqL能够存储emoji表情字符的设置教程,希望对您有用.如果有疑问,可以联系我们. ...

  2. mysql版本的索引类型_【mysql】索引 回表 覆盖索引 索引下推

    索引类型 索引类型分为主键索引和非主键索引.(一定要牢记,是怎么存储数据的) 主键索引的叶子节点存的是整行数据.在 InnoDB 里,主键索引也被称为聚簇索引(clustered index). 非主 ...

  3. mysql 税率用什么类型_在MySQL中计算增值税/税金总额 - 增值税税率取决于地点字段...

    我正在尝试在MySQL中创建一个报告(来自Wordpress / Woocommerce安装中的表格,但这个商店征税的方式与Woocommerce的工作方式不同,所以我不能使用Woocommerce报 ...

  4. mysql 显示表情符号_mysql 支持emoji 表情字符的解决方法。

    1.utf8 字符集最多3个字符,而emoji表情字符是unicode大字符集,需要4个字节表示,所以utf8无法表示. mysql要存储emoji字符,需要设成utf8mb4字符集,意思就是utf8 ...

  5. 【MySQL】存储emoji表情报错(Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...')的解决方案...

    Emoji表情字符现在在APP已经广泛支持了.但是MySQL的UTF8编码对Emoji字符的支持却不是那么好.所以我们经常会遇到这样的异常: Java.sql.SQLException: Incorr ...

  6. mysql xf0x9fx8ex88_【MySQL】存储emoji表情报错(Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...')的解决方案...

    Emoji表情字符现在在APP已经广泛支持了.但是MySQL的UTF8编码对Emoji字符的支持却不是那么好.所以我们经常会遇到这样的异常: Java.sql.SQLException: Incorr ...

  7. 【Mysql】存储emoji表情报错(Incorrect string value: ‘\xF0\x9F\x98\x82\xF0\x9F...‘)的解决方案

    [Mysql]存储emoji表情报错(Incorrect string value: '\xF0\x9F\x98\x82\xF0\x9F...')的解决方案 参考文章: (1)[Mysql]存储emo ...

  8. Sequelize+MySQL存储emoji表情

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

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

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

最新文章

  1. 哪些品牌开始连接鸿蒙系统,华为鸿蒙系统硬件生态品牌升级为 HarmonyOS Connect
  2. 如何用计算机寒假计划表,寒假学习计划表
  3. 浅谈Hive和HBase区别
  4. 异步请求积压可视化|如何 1 分钟内快速定位函数计算积压问题
  5. Kylin安装,Kylin网页版教程学习
  6. LeedCode篇:234. 回文链表
  7. Linux 之 光标消失隐藏术
  8. java技术指标_使用 Micrometer 记录 Java 应用性能指标
  9. VS2012 MFC 入门
  10. 微博视频php解析,微博视频的地址解析下载
  11. 神经计算棒python_Intel 最新的神经元计算棒Movidius Neural Compute Stick能干什么 ?
  12. 如何彻底解决浏览器导航被劫持为www.hao123.com
  13. ROOT(a Data analysis Framework)-Note4: iSTEP day1-TH1TF1
  14. java 三维全景_三维全景技术是什么?
  15. Hadoop——开源分布式计算平台简介
  16. 什么是Redis持久化
  17. SSM上传,下载,在线播放视频
  18. 7-11 排座位(并查集)
  19. 数据分析统计学基础之数据的趋势
  20. 用计算机打出自己的终身伴侣,ZT嫁人就要嫁玩CS的男人

热门文章

  1. android生成图片不失真,Android的PdfRenderer类生成低质量图像
  2. 微信小程序 — 二维码海报分享到好友功能
  3. 关闭localized intellij idea切换语言提醒
  4. Kutools for Excel 结合 300 多种高级功能和工具
  5. android system image 编译出错,Android framework 编译常见错误
  6. not allowed to launch “localhost:81/XXXXX“
  7. 解决WIN10播放AVI等格式视频黑屏只有声音的问题
  8. jmeter打开bat文件闪退
  9. 中科蓝讯 AB32VG1 RISC-V开发板模块评测任务大挑战
  10. 原神抽卡模拟器(java简易版)