前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >简单记录关于DBbridge迁移bigint类型数据变为负数的问题

简单记录关于DBbridge迁移bigint类型数据变为负数的问题

原创
作者头像
用户10718331
发布2023-08-24 12:29:45
4370
发布2023-08-24 12:29:45
举报
文章被收录于专栏:DBbridge

在DBbridge中测试迁移tdsqlpcloud_monitor库时发现部分表迁移失败:

迁移任务详情
迁移任务详情

根据报错 Data truncation: Out of range value for column 'checksum' at row 1,手动在目标库中drop proxy_classes_analysis表,然后用DBbridge的手动补正功能去掉 checksum 的 unsigned 限制后重新建表:

手动补正
手动补正

建表完成后重新迁移,迁移完成后对比id为3892的记录迁移前后 checksum 的变化:

源端id为3389的记录
源端id为3389的记录
目标端id为3389的记录
目标端id为3389的记录

可以发现源端checksum:9638865235174554611迁移后变为checksum:-8807878838534997005,盲猜是因为数据类型超出范围导致变为负数。写一段JAVA程序验证一下:

验证
验证

果然是因为将bigint类型的数据赋值给了long类型,导致了数据溢出,建议DBbridge后期能修复一下这个问题。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
TDSQL MySQL 版
TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档