【Oracle】导出全库备份,导入指定的schema并替换现有的表


需求:开发环境,每天晚上做了全库导出备份。由于误操作,现在要恢复指定的schema下的所有表,操作思路如下:

1.全库导出备份的语句

expdp system/oracle full=y  dumpfile=arp103.$version.dmp logfile=arp103.$version.log directory=dmppath compression=ALL
  • compression=ALL 是压缩备份的意思,节省空间。

2.导入备份语句:

impdp system/oracle dumpfile=arp103.20200326_050101.dmp logfile=arp103.20200326imp.log directory=dmppath schemas=finedb51 table_exists_action=replace

其中:
table_exists_action参数说明

  • skip:默认操作

  • replace:先drop表,然后创建表,最后插入数据

  • append:在原来数据的基础上增加数据

  • truncate:先truncate,然后再插入数据

根据需求,我这里运用的是replace语句,替换了schema的所有表。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM