我正在尝试使用sqoop导出将其中一个表从蜂巢导出到MySQL。蜂巢表数据包含特殊字符。
1 じゃあまた
2 どうぞ
sqoop export --verbose --connect jdbc:mysql://xx.xx.xx.xxx/Sampledb --username abc --password xyz --table special_char --direct --driver com.mysql.jdbc.Driver --export-dir /apps/hive/warehouse/sampledb.db/special_char --fields-terminated-by ' '
使用上述sqoop导出命令后,数据以问号(???)的形式存储,而不是带有特殊字符的实际消息。
id message
1 ?????
2 ???
在存储特殊字符而不是问号(???)时,有人可以帮我吗?
答案 0 :(得分:0)
在JDBC URL中指定正确的编码和字符集,如下所示:
jdbc:mysql://xx.xx.xx.xxx/Sampledb?useUnicode=true&characterEncoding=UTF-8
sqoop export --verbose --connect jdbc:mysql://xx.xx.xx.xxx/Sampledb?useUnicode=true&characterEncoding=UTF-8 --username abc --password xyz --table special_char --direct --driver com.mysql.jdbc.Driver --export-dir /apps/hive/warehouse/sampledb.db/special_char --fields-terminated-by ' '
请验证日语字符的字符集编码并使用正确的字符集。