文档首页/ 云数据库 TaurusDB/ 常见问题/ 数据库参数修改/ 使用utf8mb4字符集存储emoji表情到GaussDB(for MySQL)实例
更新时间:2024-09-05 GMT+08:00

使用utf8mb4字符集存储emoji表情到GaussDB(for MySQL)实例

如果要实现存储emoji表情到GaussDB(for MySQL)实例,需要如下几方面统一使用或者支持utf8mb4字符集。

  • 客户端:保证客户端输出的字符串的字符集为utf8mb4。
  • 应用到GaussDB(for MySQL)实例的连接:支持utf8mb4字符集。以常见的JDBC连接为例,需要使用MySQL Connector/J 5.1.13(含)以上的版本,JDBC的连接串中,建议不配置“characterEncoding”选项。
  • GaussDB(for MySQL)实例配置如下:
    • 设置控制台参数“character_set_server”“utf8mb4”

      1. 登录管理控制台
      2. 单击管理控制台左上角的,选择区域和项目。
      3. 在页面左上角单击,选择数据库 > 云数据库 GaussDB(for MySQL)
      4. “实例管理”页面,选择指定的实例,单击实例名称,进入实例的基本信息页面。
      5. 在左侧导航栏中选择“参数修改”,在“参数”页签选择“character_set_server”,参数值修改为“utf8mb4”
      6. 单击“保存”,在弹出框中单击“是”,保存修改。
    • 选择数据库的字符集为utf8mb4
      1. “实例管理”页面,选择目标实例,单击操作列的“登录”,进入数据管理服务数据库登录界面。

        您也可以在“实例管理”页面,单击目标实例名称,在页面右上角,单击“登录”,进入数据管理服务数据库登录界面。

      2. 输入数据库用户名和密码,单击“登录”,即可进入您的数据库并进行管理。
      3. 在“数据库列表”区域,单击“新建数据库”,在弹出框中输入数据库名称,选择字符集为“utf8mb4”,单击“确定”
        图1 新建数据库
    • 配置表的字符集为utf8mb4

常见问题

如果您对于JDBC连接串设置了characterEncoding为utf8,或者执行过上述操作后,仍旧无法正常插入emoji数据,建议您按照如下示例,在代码中指定连接的字符集为utf8mb4:

String query = "set names utf8mb4";
stat.execute(query);