背景
从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。修改实例数据库参数配置