oracle转mysql数据迁移

oracle转mysql数据迁移
一、
[Err] 1146 - Table ‘testfarm.TF_CAR_FRAME’ doesn’t exist
linux的mysql区分大小写,数据库中的表名与输入的sql语句中的使用的表名大小写不一致导致的
如此表存在,则是linux的mysql区分大小写导致;如此表不存在,则看下一条方法
解决方法如下:
<1>查找该mysql数据库的配置文件my.cnf的路径
<2>在my.cnf中的[mysqld]下,追加lower_case_table_names = 1
1表示不区分大小写,0区分大小写
<3>重启mysql,重新在此表插入数据,看是否可用
systemctl restart maraidb/mysqld(centos7)
/etc/init.d/mysqld restart(centos6)

二、
1.
PowerDesigner安装教程(含下载+汉化+破解)
https://www.cnblogs.com/justuntil/p/12984309.html
Sybase\PowerDesigner 16

2
将Oracle的sql文件转换成MySQL的sql文件 使用 PowerDesigner
https://blog.csdn.net/huangbaokang/article/details/102860621
https://blog.csdn.net/beguile/article/details/80362904
生成的 sql 里,数据库名需要自己修改。
另外会生成一句 create user XXXXX; 这句也需要注释掉或删掉。

3.从oracle导出的 mysql的.sql 文件 注意可能会爆如下错误
https://blog.csdn.net/jdjdndhj/article/details/70242174
就是 单双引号 反引号的 问题
再次运行就不会报错了,但是有一点需要注意,后面列的注释不能用反引号,因为这只是一个普通字符串,不是MySQL的关键字。
在英文键盘输入环境下,按图示按钮输入反引号 `
在这里插入图片描述
4. 将导出后的sql表结构创建完MySQL表后, 开始 执行 insert 语句
將 全部爲 insert语句的 sql 文件 执行到 mysql中(前提 是 从oracle导出的 sql 纯 insert语句的 .sql文件
报错 输入搜索
Navicat 1064 - You have an error in your SQL syntax; check the manual that cor
源错误:
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '“TF_BBS_REPLY” VALUES (‘31389’,‘2018-03-05 17:11:07’ at line 21

错误 语句 oracle 导出来 就是这样的
INSERT INTO “TESTFARM”.“TF_BBS_REPLY” VALUES (‘31389’, ‘23782’, ‘1856’, ‘2018-03-05 17:11:07’, ‘0’, ‘’);
改成如下正确语句 就是因为在 mysql中 TESTFARM.TF_BBS_REPLY 这个算作特殊字段 要用反引号 不能用普通引号*******
INSERT INTO TESTFARM.TF_BBS_REPLY VALUES (‘31389’, ‘23782’, ‘1856’, ‘2018-03-05 17:11:07’, ‘0’, ‘’);

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值