博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL utf8mb4 字符集:支持 emoji 表情符号
阅读量:6417 次
发布时间:2019-06-23

本文共 1911 字,大约阅读时间需要 6 分钟。

我用他的方法解决了问题,亲测可用,不要用Navicat for Mysql去查询编码,

在服务器中以root命令进入mysql,用show variables like 'char%';命令查询的编码才是最准确的.

㈠ 序言

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

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

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

㈡ 限制

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

㈢ 简要步骤

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

① 备份数据库

② 升级 MySQL Server 到 v5.5.3+

③ 修改 database、table和column字符集

请参考下面命令修改字符集:(不用重启,SQL Server不能修改库)

For each database:

ALTER DATABASE database_name CHARACTERSET utf8mb4 COLLATE = utf8mb4_unicode_ci;

# For each table:

ALTER TABLE table_name CONVERT TO CHARACTERSET utf8mb4 COLLATE utf8mb4_unicode_ci;

# For each column:

ALTER TABLE table_name CHANGE column_name column_name VARCHAR (191) CHARACTERSET 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)

http://www.linuxidc.com/Linux/2013-05/84360.htm

 

转载地址:http://atpra.baihongyu.com/

你可能感兴趣的文章
监测超过特定内存阀值进程并结束
查看>>
Linux Centos 查询信息
查看>>
android adb命令
查看>>
python “双”稀疏矩阵转换为最小联通量“单”矩阵
查看>>
揭秘天猫双11背后:20万商家600万张海报,背后只有一个鹿班
查看>>
重置mysq root密码脚本
查看>>
我的友情链接
查看>>
MHA配置参数
查看>>
深入理解Lock
查看>>
vim的块选择
查看>>
HTML --块
查看>>
在DLL中获取主进程窗口句柄
查看>>
基于消息队列的双向通信
查看>>
一个不错的loading效果
查看>>
Debian允许root用户登录
查看>>
linux的文件系统
查看>>
上云利器,K8S应用编排设计器之快到极致
查看>>
袋鼠云服务案例系列 | 从DB2到MySQL,某传统金融平台的互联网转型之路
查看>>
RealServer配置脚本
查看>>
九月份技术指标 华为交换机的简单配置
查看>>