问题现象
GBK 编码租户使用 ODC V3.1.1 及之前的版本或者 ODC V3.2.0 版本导入 GBK 编码 SQL 文件时,中文数据显示乱码。
问题原因
ODC V3.1.1 及之前的版本依赖的 JDBC 驱动存在 GBK 编码问题,此问题在 V2.2.6 驱动已修复。
解决方法
通过 ODC 导入文件前,需要对导入的文件进行编码转换。对一个目录下的文件进行批量编码转换的参考脚本:
SOURCE_DIRECTORY=your_source_directory
TARGET_DIRECTORY=your_target_directory
mkdir -p ${TARGET_DIRECTORY}
find "${SOURCE_DIRECTORY}" -name '*.sql' -exec iconv --verbose -f gbk -t utf-8 -o {} "${TARGET_DIRECTORY}"/{} \;