oracle数据转成mysql_oracle数据库数据传输转换为mysql数据库

1、ORACLE

创建表空间

create tablespace CMS datafile 'E:/app/cffc2/oradata/orcl/CMS.DBF' size 1500M autoextend on next 5M maxsize 3000M;

删除表空间

DROP TABLESPACE CMS INCLUDING CONTENTS AND DATAFILES;

创建用户

create user mycms identified by mycms$2017 default tablespace CMS;

grant dba to mycms;

删除用户

drop user mycms cascade;

数据库备份

exp cms/cms$2017 BUFFER=64000 FILE=C:\CMS20171115.DMP  full=Y;

数据库还原

imp mycms/mycms$2017@orcl file= C:\CMS20171115.DMP full=y;

2、Navicate Premium

Navicate需要同时连接上mysql和oracle数据库,对于64位系统,navicate有时连接不上oracle,处理方案如下:

d85f4229a554757fdc590413b6e45cb7.png

E:\app\cffc2\product\11.2.0\dbhome_1\BIN\oci.dll 是本地安装的oracle的dll文件。

3、数据转换

5e86326e557cdc2471f1de5a15e0abc3.png

3d5fbfe61cd3b3ac6fa5fa662acaeafb.png

数据转换过程中存在一个问题,oracle数据库中的日期类型字段可能存在日期字段长度过长无法转换,此时需要整体修改oracle数据库中的日期类型字段类型为timestamp,长度为6。然后再进行数据传输。

数据传输完成后需要调整mysql中的字段类型及长度,比如:decimal-int,datetime-date,text-varchar;另外根据其实字段来区分日期的精度,长度设置为0;增加表的主键自增。

4、mysql

mysql远程连接时需要对外放权

5d51f7b7cb65e80c4ef9d19c6e56c901.png

数据转换成功到mysql,因操作系统的问题可能需要调整mysql大小写问题:

1)用root登录,修改 /etc/my.cnf;

2)在[mysqld]节点下,加入一行: lower_case_table_names=1

3、重启MySQL即可 service mysql restart;

其中 lower_case_table_names=1 参数缺省地在 Windows 中这个选项为 1 ,在 Unix 中为 0,因此在window中不会遇到的问题,一旦一直到linux就会出问题的原因(尤其在mysql对表起名时是无法用大写字母的,而查询用了大写字母却会出查不到的错误)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值