背景:我们给用户提供了新的直播系统,但客户之前的老系统用的数据库是Oracle,我们提供的新系统用的是MySQL
客户诉求:将老系统中的所有直播数据导入到MySQL中;
思路:我知道Navicat有数据迁移的功能,所以在想将客户的数据导入到我本地的Oracle中,用Navicat,数据迁移导过来;再在新系统提供接口将老数据导入到新系统中; 但是,我从业这几年,没用过Oracle…… 还好,有朋友用过,所以问了问朋友
具体解决步骤:
1、win7系统;安装Oracle
,客户版本 11gr2;我安装的版本1. Oracle Database 11g Release 11.2.0.1.0 - 64bit Production;
安装过程参考:
https://blog.csdn.net/qq_33317586/article/details/81712139
2、安装Navicat和MySQL
Navicat premium 上官网下载安装就好了;
MySQL安装过程参考:
https://www.jb51.cc/mysql/560200.html
3、两个数据库环境安装好之后,将客户提供的
dmp文件
导入到Oracle中:
1>Navicat 链接Oracle;
2>Oracle 在导入数据库的之前,需要先创建表空间和表名
--
权限:
grant
aq_administrator_role
to
LIVE
with
admin
option
;
grant
authenticateduser
to
LIVE
with
admin
option
;
grant
connect
to
LIVE
with
admin
option
;
grant
dba
to
LIVE
with
admin
option
;
grant
resource
to
LIVE
with
admin
option
;
grant
unlimited tablespace
to
LIVE
with
admin
option
;
3>利用命令行 imp命令将dmp文件导入到Oracle数据库中:
导入整个库:
C:\Users\Administrator>imp LIVE/root@orcl file = C:\Users\Administrator\Desktop\
a.dmp log = C:\Users\Administrator\Desktop\live.log full = y;
导入整个数据库命令:
imp 用户名/密码@orcl file = dmp文件路径 log = 日志路径 full = y;
等待它自动导入,导入成功会提示导入成功,没有错误警告。
3、Oracle数据整理好之后,利用Navicat进行数据传输
1>先在MySQL新建一个用来放数据的数据库
;
注意:数据库的默认编码!数据库的默认编码!数据库的默认编码!别问我为什么强调(因为字符集 我傻了)……
2>Navicat>工具>数据传输: