首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >utf8mb4编码出现MariaDB字符串值不正确错误

utf8mb4编码出现MariaDB字符串值不正确错误
EN

Stack Overflow用户
提问于 2019-06-21 17:46:07
回答 1查看 1.3K关注 0票数 0

为了支持表情符号,我在MariaDB上将数据库和表格字符集更改为utf8mb4和排序规则utf8bm4_turkish_ci。虽然我可以通过终端连接到服务器来轻松地插入和选择操作,但是当我想要通过客户端(web应用程序或MySQL工作台)执行插入操作时,我得到了“不正确的字符串值”错误。而且,当我想用select显示数据时,它是损坏的。与此同时,我注意到了另一种情况:即使数据库和表不支持utf8mb4 (我只使用utf8进行测试),我可以通过终端插入表情,甚至可以使用select查看。

my.cnf文件的定义如下;

代码语言:javascript
复制
[mysqld]
datadir        = /var/lib/mysql
socket         = /var/lib/mysql/mysql.sock
user           = mysql
symbolic-links = 0
old_passwords  = 0

innodb_file_format        = Barracuda
default-storage-engine    = InnoDB
innodb_file_per_table     = 1
innodb_open_files         = 500
innodb_thread_concurrency = 24
lower_case_table_names    = 1
character-set-server      = utf8mb4
collation-server          = utf8mb4_turkish_ci
init-connect              = 'SET NAMES utf8mb4 COLLATE utf8mb4_turkish_ci'

skip-character-set-client-handshake
innodb_large_prefix

[client]
default-character-set = utf8mb4

[mysql]
skip-secure-auth
default-character-set = utf8mb4
EN

回答 1

Stack Overflow用户

发布于 2019-06-23 12:20:29

此外,表中的列需要为CHARACTER SET utf8mb4。请提供SHOW CREATE TABLE以便我们可以检查它。

另外,从失败的客户端执行SHOW VARIABLES LIKE 'char%';;在那里可能是错误的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56700901

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档