【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】
做数据迁移,如标题所示,使用ODB自带的导入导出功能做的迁移,迁移时没有报错,在实际运行工程的时候,出现时间类型如果是空值的话,会有乱码报错,转换异常,但是使用客户端sql查询,显示的那个字段还是正常空值。
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】
做数据迁移,如标题所示,使用ODB自带的导入导出功能做的迁移,迁移时没有报错,在实际运行工程的时候,出现时间类型如果是空值的话,会有乱码报错,转换异常,但是使用客户端sql查询,显示的那个字段还是正常空值。
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
请问是使用的obloader和obdumper做的迁移吗
导入成功之后查询出错,应该和导入过程无关。
请检查导入的数据,是否存在 ‘0000-00-00 00:00:00’ 等非法时间值。
可通过订正非法数据或者在 JDBC url 配置 zeroDateTimeBehavior 来解决。
您可以通过 ob-loader-dumper 导数工具导入来绕开次问题, ob-loader-dumper 的默认配置是 zeroDateTimeBehavior=convertToNull 。
这里 ODC 配置为 zeroDateTimeBehavior=Round 了,我们录 BUG 下个版本修复。
好的,感谢