日期:2013-08-27  浏览次数:20645 次

    第一步:

  在D盘根目录下新建文件夹Backup,这个目录可以任意,复制exp.exe文件到这个目录下,在该目录下新建文件expbkup.bat

exp test/test@test file=d:\backup\%date:~0,10%.dmp log=d:\backup\%date:~0,10%.log compress=n buffer=8092 consistent=y direct=n constraints=y feedback=10000  grants=y record=y indexes=y triggers=y rows=y

  sid是test,用户名/密码是test/test,调用exp命令在d:\backup目录下生成相应的数据文件和日志文件。

  第二步:

  在控制面板的任务计划下新建一任务计划导游,选择执行任务的文件expbkup.bat,任务名随意expbkup,选择每天执行这个任务,起始时间18:00,起始日期默认为从当天开始,输入用户名和密码,点完成可添加每天下午6:00备份一次Oracle数据库的计划任务。

  调用linux日期函数,实现每天自动生成一个oracle备份

-bash-2.05b$ more /opt/oracle/product/movedata/movedata1.sh

ORACLE_HOME=/opt/oracle/product/9.0.2
export ORACLE_HOME
. /opt/oracle/product/.bash_profile
export DATE=$(date +%Y%m%d)       #调用linux日期函数,实现文件按日期命名每天一个备份
/opt/oracle/product/9.0.2/bin/exp goldring/123456@szdb file=/data/OracleDB_Backup/goldring.dmp log=/data/OracleDB_Back
up/loggoldring.dmp consistent=yes

/opt/oracle/product/9.0.2/bin/exp jltgame/123456@szdb file=/data/OracleDB_Backup/jltgame$DATE.dmp log=/data/OracleDB_Ba
ckup/logjltgame.dmp consistent=yes

/opt/oracle/product/9.0.2/bin/exp userid=oraclebackup/"abcd456&*("@szdb owner=moonprincess file=/data/OracleDB_Backup/moon
princess.dmp log=/data/OracleDB_Backup/logmoonprincess.dmp consistent=yes

#ftp -n 10.0.0.3 < /opt/oracle/product/movedata/ftpcommand

  把以上脚本放到crontab中即可

  注:oracle实现自动备份关键是要在备份脚本中加入oracle的环境变量和在备份文件名中加入$DATE变量