Oracle 导入dmp数据流程(太反人类了)

第一次发布文章 里面可能还有一些错误 也请大家多多海涵多多交流.. 谢谢大家

里面的部分操作也是我搜索了很多文章 看了很多大佬的解决方法才弄出来的 也请大家包含 谢谢大家

因为本人对oracle不太熟 也是因为公司业务要求要导入dmp文件 所以只了解了一些片面的 内部有一些重复的操作我也不太知道怎么解决 只知道这么做能把文件导进去.....

首先从安装开始说把.... 安装开始就 问题不断....

安装文献 : https://blog.csdn.net/Alex_81D/article/details/123995878 直接照着弄即可 一步也不要落下!记住!很重要!切忌一字一行! (PS:我一开始一句一行 然后报错 研究了一个小时... 后来发现漏了一句... )

其次 我们尽量全程使用oracle这个用户进行操作 密码为 helowin

记得 每次启动时 我们都需要初始化表环境

source /etc/profile

如果不重新加载环境变量 就不会进入sql页面进行其他操作 也就是说oracle会抛出错误 这里就不粘贴复制了.

我们需要在docker exec 之前 将文件提前复制进入oracle中 也就是需要在linux界面中就提前复制好

sudo docker cp filename oracle:/home/oracle/filename

复制好后 别着急进行导入 但是得先导入看看这个导入文件的用户名是什么

imp OSM/root@helowin file=/home/oracle/ADDRESS.dmp ignore=y full=y

例如这个 可能会弹出

"ALTER SESSION SET CURRENT_SCHEMA= "MATERIAL""

IMP-00003: ORACLE error 1435 encountered

ORA-01435: user does not exist

IMP-00000: Import terminated unsuccessfully

记住上面这个MATERIAL 我们接下来的操作 都要用到这个名字建立用户以及表空间 便于导入

以下的表空间名称 以及创建用户的名称 都要用到MATERIAL

/*创建表空间*/

create tablespace TABLESPACE_QCJ

/*表空间物理文件名称*/

datafile 'TABLESPACE_QCJ.dbf'

-- 这种方式指定表空间物理文件位置

-- datafile 'F:\APP\QIUCHANGJIN\ORADATA\ORCL\TABLESPACE_QCJ.dbf'

-- 大小 500M,每次 5M 自动增大,最大不限制

size 500M autoextend on next 5M maxsize unlimited;

/* 创建用户*/

create user qiuchangjin

IDENTIFIED BY root --用户密码

default tablespace TABLESPACE_QCJ-- 表空间是上面创建的

temporary tablespace TEMP -- 临时表空间默认 TEMP

profile DEFAULT;

--password expire;

/*密码过期需要重设密码,意思是当你用这个新建立的密码过期用户首次登录后,系统会提示你重新输入新密码,不然会拒绝你登陆,重设新密码后就可以登录,该用户的密码就是你新设的密码,相当于首次登录修改密码这样的选项。*/

基于权限需要进入到sql中给予 这里进入代码为:

sqlplus /nolog

进入以后 别急 还有一步 你还没连接呢 如果你急着给权限 就会报出一个错误:

此时需要连接 这就提到了 为什么需要用oracle进行操作 当使用root进行操作时 会报错 说权限不足的错误 非常头疼 这个错误我研究了很长时间 直到我换了个用户 神奇的发现 欸! 连上了! 焯!

用此代码进行连接:

conn sys/as sysdba

输入后提示输入密码 直接输入 helowin 即可

此时弹出成功 进行下一步

然后 给予该用户权限 如果不给予权限 ORACLE会进行报错,虽然不知道哪个是具体的权限 反正都给了 也没毛病 user指上面所创建的用户

grant imp_full_database,session,resource to user

给予权限后 我们终于 历经前辛万难 终于可以导入了

欸! 还别急 记得退出sql页面 因为imp其实是个工具 在sql界面会报出错误 没有该命令

直接 exit 退出到 exec界面

然后输入

imp OSM/root@helowin file=/home/oracle/ADDRESS.dmp ignore=y full=y

上苍啊! 成功啦!

等会 好像又没成功 莫名其妙弹出了很多个用户和什么东西 别急 然后我有点急了 nn的 这么长时间下来 还报错! 我又把导入的代码重输入了一遍.. 然后 成功了....

一遍遍的血与泪啊.... 碰到一堆鸟错误...... 好在最后是成功了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值