背景
从maxcompute 将数据导出到polardb, 由于string 内容中包含特殊字符,emoji符号,导致同步数据时候,自动剔除含有特殊字符的数据。

问题排查方案:
1数据库和客户端编码格式不一致,需先修改编码格式。 浏览器编码和数据库或客户端编码格式不一致,需先统一编码格式,然后进行数据预览。 修改数据库相关的编码格式为utf8mb4。例如,在RDS控制台修改RDS的数据库编码格式。 说明 设置RDS数据源编码格式命令:set names utf8mb4。查看RDS数据库编码格式命令:show variables like 'char%'。
2 JDBC格式添加的数据源修改utf8mb4:jdbc:mysql://xxx.x.x.x:3306/database?com.mysql.jdbc.faultInjection.serverCharsetIndex=45。 实例ID形式添加数据源:在数据库名后拼接,格式为database?com.mysql.jdbc.faultInjection.serverCharsetIndex=45。
结果:
查询建表语句,polardb表的字符集设置的是utf8mb4。修改实例数据库参数配置

本文探讨了从MaxCompute到Polardb同步数据时遇到的问题,重点在于字符串中特殊字符和emoji符号导致的数据丢失。通过排查,提出了解决方案,包括数据库编码格式修改(如设置为utf8mb4),以及JDBC连接参数调整。最终,确保表的字符集正确设置,并提供了实例数据库参数配置步骤。
5万+

被折叠的 条评论
为什么被折叠?



