mysql 字符串 编码_Mysql字符串编码格式设置为utf8mb4

本文介绍如何将MySQL的编码格式设置为utf8mb4,以兼容更多字符及表情,并详细说明了设置过程,包括SQL命令及配置文件my.ini的修改方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

设置mysql的编码格式为utf8mb4可以兼容更多的字符,表情等,同时也包含了utf8字符编码。

设置编码格式为utf8mb4,通过show variables like 'character%'查询系统的编码格式

mysql> show variables like 'character%';

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

| Variable_name | Value |

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

| character_set_client | utf8 |

| character_set_connection | utf8 |

| character_set_database | latin1 |

| character_set_filesystem | binary |

| character_set_results | utf8 |

| character_set_server | latin1 |

| character_set_system | utf8 |

| character_sets_dir | /opt/mysql/server-5.6/share/charsets/ |

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

通过如下sql设置编码

set character_set_client=utf8 ;

set character_set_connection=utf8 ;

set character_set_database=utf8 ;

set character_set_database=utf8 ;

set character_set_results=utf8 ;

set character_set_server=utf8 ;

set character_set_system=utf8 ;

还需要修改mysql根目录下的配置文件my.ini文件,特别是client的编码格式,设置后客户端传入的字符编码格式才是utf8mb4。

[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'

本机查询的结果:

163ac30f6057101bb658eee89d4358c4.png

客户端查询到的结果

498975b9b429247cd7fa4a835f154707.png

可以看到客户端查询的结果是client和connnection的编码格式为utf8,但这并不影响使用。

值得注意的是表的编码格式从图形化界面中更改是没用的,需要在创建时设置编码格式是utf8mb4,如果已经有数据那么就备份后重新建表,创建时候就设置编码为utf8mb4。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值