ITPub博客

首页 > 数据库 > Oracle > Oracle expdp/impdp导入导出备份数据库脚本

Oracle expdp/impdp导入导出备份数据库脚本

Oracle 作者:urgel_babay 时间:2016-02-29 17:27:45 0 删除 编辑
2014.12.01

当oracle在非归档情况运行时,又需要备份数据库,那么exp/expdp作为导出,imp/impdp作为导入时不错的选择。
下面是一个简单的全库导出的脚本
[oracle@BIDB scripts]$ cat full_bak.sh 
#!/bin/bash
. /home/oracle/.bash_profile
cd /orabak/dbbak

echo "#######################################################" >> /orabak/log/full.txt
echo "starting delete logfile at `date`" >> /orabak/log/full.txt
find /orabak/dbbak -mtime +7 -name "*.log" -exec rm -rf {} \;
echo "complete delete logfile at `date`" >> /orabak/log/full.txt

echo "#######################################################" >> /orabak/log/full.txt
echo "starting delete dumpfile at `date`" >> /orabak/log/full.txt
find /orabak/full -mtime +7 -name "*.dmp" -exec rm -rf {} \;
echo "complete delete dumpfile at `date`" >> /orabak/log/full.txt

echo "#######################################################" >> /orabak/log/full.txt
echo "starting backup of database at `date`" >> /orabak/log/full.txt
expdp "'/ as sysdba'" directory=full_expdp dumpfile=full_%U.dmp full=y parallel=16 compression=ALL filesize=10G logfile=full_expdp.log job_name=expdp_job1;
echo "complete backup of database at `date`" >> /orabak/log/full.txt

mkdir -p /orabak/full/`date +%Y%m%d` && cd /orabak/full/`date +%Y%m%d`
echo "#############################################################" >> /orabak/log/cp.txt
echo "starting copy dumpfile to target file       at `date`" >> /orabak/log/full.txt
cp /orabak/full/*.dmp /orabak/full/`date +%Y%m%d`
cp /orabak/full/*.log /orabak/full/`date +%Y%m%d`
echo "complete copy dumfile `date`" >> /orabak/log/full.txt

如果需要做导入:
impdp \'/ as sysdba\' directory=imp27 full=y dumpfile=full_%U.dmp logfile=fullimp.log parallel=10 
相关的参数,根据机器的配置来选择。
导入的相关注意事项请看http://blog.itpub.net/27099995/viewspace-1348352/

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30936525/viewspace-2016684/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2016-02-29

  • 博文量
    203
  • 访问量
    339137