如何把Oracle 11g导出的数据库导入到12c里面

如何把Oracle 11g导出的数据库导入到12c里面,第1张

从oracle 12c 备份(expdp)出来的包,还原到11g里,想想都知道会有兼容性问题。

果不其然,报错了:

ORA-39142: 版本号 41 (在转储文件 “叉叉叉expdp” 中) 不 兼容

之类

后来才知道,在12C中备份出来时,应指定版本信息,例如我要导进11g的库(具体版本为111060,打开sqlplus就能看到),则version=111060

语句:

在12C备份

1

<code class="hljs livecodeserver">expdp system/password@SID12c directory=dbbak dumpfile=20160321expdp logfile=20160321log schemas=leftfist version=111060</code>

在11g中还原

1

<code class="hljs livecodeserver"><code class="hljs livecodeserver">impdp s

因为oracle是目前

我们所用的几乎最大的数据

它所占用的内存是非常大的,

所以

你在导入大量的数据的时候,

很有可能

也会占用大量的内存,

如果你的电脑本身内存比较小,

这样的占用量

确实会让你的电脑死机。

使用Expdp/Impdp来完成效率比exp/imp绝对的快。因为这个ORACLE10G特性。

1)按用户导

expdp scott/tiger@orcl schemas=scott dumpfile=expdpdmp DIRECTORY=dpdata1;

2)并行进程parallel

expdp scott/tiger@orcl directory=dpdata1 dumpfile=scott3dmp parallel=40 job_name=scott3

3)按表名导

expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdpdmp DIRECTORY=dpdata1;

4)按查询条件导

expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdpdmp Tables=emp query='WHERE deptno=20';

5)按表空间导

expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespacedmp TABLESPACES=temp,example;

6)导整个数据库

expdp system/manager DIRECTORY=dpdata1 DUMPFILE=fulldmp FULL=y;

五、还原数据

1)导到指定用户下

impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE=expdpdmp SCHEMAS=scott;

2)改变表的owner

impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdpdmp TABLES=scottdept REMAP_SCHEMA=scott:system;

3)导入表空间

impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespacedmp TABLESPACES=example;

4)导入数据库

impdb system/manager DIRECTORY=dump_dir DUMPFILE=fulldmp FULL=y;

5)追加数据

impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdpdmp SCHEMAS=system TABLE_EXISTS_ACTION=append;

以上就是关于如何把Oracle 11g导出的数据库导入到12c里面全部的内容,包括:如何把Oracle 11g导出的数据库导入到12c里面、oracle 11g 数据泵导入导出(expdp impdp)执行命令时卡死,不报错也不中断,求助!、如何导oracle数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9294149.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存