集群中的 aws aurora rds (mysql) 无法插入表情符号

ali*_*ego 4 mysql amazon-web-services emoji amazon-aurora

我在集群中使用 aurora rds (mysql) 并且无法插入表情符号。我试图插入的列具有以下排序规则:

utf8mb4 - utf8mb4_unicode_ci

我曾尝试使用客户端插入,也尝试从 mysql 工作台写入查询,但在这两种情况下,我都只看到 ???? 在该领域。

我更新了表默认字符集:utf8mb4 和默认排序规则:utf8mb4_unicode_ci

但仍然得到???而不是表情符号

编辑1:

我试图编辑集群的参数组并将所有字符集值设置为 utf8mb4 并将所有排序规则值设置为 utf8mb4_unicode_ci 但仍然无法正常工作。

Kar*_*oos 7

您的集群参数组应设置以下选项:

  • 字符集客户端:utf8mb4
  • 字符集连接:utf8mb4
  • 字符集数据库:utf8mb4
  • 字符集服务器:utf8mb4
  • collat​​ion_connection: utf8mb4_unicode_ci
  • collat​​ion_server: utf8mb4_unicode_ci

可能需要在更新后重新启动您的实例。当您连接到集群时,您希望为您的连接设置正确的排序规则,如下所示:

SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci;
Run Code Online (Sandbox Code Playgroud)

如果您SHOW VARIABLES LIKE "%collation%"在此之后运行,您应该看到三个变量都具有正确的排序规则 (utf8mb4_unicode_ci)。

您还需要将您的表和列转换为正确的字符集和排序规则,这已经在 DBA Stack Exchange 上得到了回答:How to easy convert utf8 tables to utf8mb4 in MySQL 5.5

  • 对我来说,有 2 个名为“default.aurora5.6”的参数组 - 只有类型为“数据库集群参数组”的参数组有这些选项 (3认同)