linux 数据泵备份脚本,Linux 平台下 Oracle 数据泵备份(expdp) SHELL 脚本

数据泵是Oracle 10g的新特性,10g以后的版本才有。 关于数据泵的理论知识参考我的Blog:

Oracle 10g EXPDP和IMPDP使用说明

https://www.cndba.cn/Dave/article/1479

Logicalbackup.shhttps://www.cndba.cn/Dave/article/1479

#!/bin/ksh

# ##################################################################

#

https://www.cndba.cn/Dave/article/1479

#              created by tianlesoftware

#                   2010-7-7

#              Email: tianlesoftware@vip.qq.com

# ##################################################################

# Oracle Environment settings

PATH=/usr/bin:/usr/ucb:/etc:.:/usr/X/bin:/bin

export PATH

ORACLE_SID=SID;pw=oracle; export pw ; export ORACLE_SID

ORACLE_BASE=/dba/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1;  export ORACLE_HOME

ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data ; export ORA_NLS33

TNS_ADMIN=$ORACLE_HOME/network/admin ; export TNS_ADMIN

LD_LIBRARY_PATH=$ORACLE_HOME/lib ; export LD_LIBRARY_PATH

PATH=$ORACLE_HOME/bin:/usr/local/bin:/usr/ccs/bin:$PATH:/usr/sbin

export PATH

CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/product/jlib ; export CLASSPATH

backup_dir=/u03/oradata/dump_backup_dir

#数据泵需要directory,这里指定自己的目录就可以了#SQL>CREATE DIRECTORY backup as ‘/u03/oradata/dump_backup_dir’;#SQL>grant read,write on directory backup toSYSTEM;https://www.cndba.cn/Dave/article/1479

DMP_FILE=SID_`date +%d%m%Y_%H%M%S`.dmp

LOG_FILE=SID_`date +%d%m%Y_%H%M%S`.log

#

#  Let's start with an export of the database

#

expdpuser/pwdDIRECTORY=dump_backup_dir DUMPFILE=$DMP_FILE TABLESPACES=TS_NAMEElogfile=$LOG_FILEparallel=3;

# 这里的2个说明,用户名和密码换成自己的,我这里是备份表空间。

#parallel 这个参数是控制并行度的,默认是1,但对于数据库比较大的时候,可以设置parallel,这样可以较少备份的

#时间,但是设置并行会耗CPU资源,如果CPU资源比较紧张的话,就不要设了。

#

# Just to be safe (with space), we'll compress the export file

# 压缩dmp文件,较少对空间的占用

#

cd $backup_dir

compress *.dmp

#

# Let's delete the backups and logs that are more than 1 days old

# 删除超过一天的dmp文件

#

find $backup_dir -name "NewccsTablespace*" -mtime +1 -exec rm {} /;

# That's all

部署的时候,只要把这个sh脚本添加到crontab中就可以了。

https://www.cndba.cn/Dave/article/1479

https://www.cndba.cn/Dave/article/1479

添加方法:crontab -e进入编辑状态,然后把脚本的路径和相关执行时间写上。保存后用crontab -l就可以查看内容:

$ crontab -l

45 1 * * * /u03/scripts/logicbackup.sh

前面5个参数的意义:

0~59表示分

1~23表示小时

https://www.cndba.cn/Dave/article/1479

1~31表示日

0~6表示星期(其中0表示星期日)

有于更多crontab的使用,参考blog:

Unix crontab 命令详解

https://www.cndba.cn/Dave/article/1479

------------------------------------------------------------------------------

Blog:http://blog.csdn.net/tianlesoftwarehttps://www.cndba.cn/Dave/article/1479

网上资源: http://tianlesoftware.download.csdn.net

相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx

DBA1 群:62697716(满); DBA2群:62697977

DBA3 群:63306533;聊天 群:40132017

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值