Mariadb数据库数据迁移问题

722 阅读1分钟

背景

​ 公司自研的内部系统,更新了版本。 旧库与新库发生了表结构的变化, 面临将旧库中数据迁移到新库上。 确定好方案后, 开始动手开始搞, 整个迁移过程四小时调错3个多小时。 特将遇到的小问题分享给大家预防 “采坑”, 后端架构Mariadb + Django, 与数据库交互采用的ORM操作。 因为新系统刚上线不久,数据量不是太多,索性就写了脚本,事先将旧库和新库分离, 通过迁移脚本查询旧库数据库批量插入到新库上,完成整个迁移工作。

问题现象

迁移报错

下图中是迁移脚本报出的错误, 后部分报错中提示语法错误

保错.png

迁移脚本

迁移脚本.png

原因

大概看了两个小时也没看出来哪有语法错误, 因为旧库和新库大部分的字段都是 字符串类型,已经不在怀疑代码问题,甚至在怀疑MySQLdb库的问题,当时已经很绝望了。 最后,只能从单条数据插入测试一下, 是否是批量插入数据接口的问题? 朝着这个方向试了一下

最终发现了一个小问题

问题代码.png

将红框中的单引号去掉后, 成功导入数据库

反思,因为%s已经是一个字符串类型,就没有在加单引号的必要。 小伙伴一定不要烦这个小错误哦。。。