db2数据库迁移到mysql5.7

最近由于项目要求,需要将db2数据库迁移到mysql数据库。具体步骤如下:

1、使用navicat新建一个数据库作为db2数据库中的数据表结构及数据的接收者

2、右键表点击“导入向导”

3、选择ODBC,点击下一步

4、选择“IBM OLE DB Provider for DB2 - DB2COPY1”,点击下一步

5、这里可以选择本地的db2数据源,也可以选择服务器上的数据库,填写完毕后点击下一步

6、这些就是你db2数据库中的表,可以根据要求勾选,点击下一步

7、在这一步中可以对数据结构进行修改,不要忘了添加主键,直接下一步

8、在这一步中选择是否要把db2表中的数据一并导入

9、点击开始,如果有报错可以点击日志查看

 

我这次导入所遇到的问题:

1、由于db2数据库有的数据表中有timestamp的数据类型,在导入mysql5.7中的时候会报“invalid default value for time“ ,这个问题是由于mysql版本的问题,在mysql5.7版本中对于timestamp的默认值已经不能是0000 00-00 00:00:00。

解决方法:修改sql_mode;查看cat /etc/my.cnf,发现sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

将标红的去掉就可以了。去掉后要重启mysql服务

  • 0
    点赞
  • 3
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值