crontab执行rman备份报错问题解决

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/louisjh/article/details/80900688

crontab总是无法运行成功,反复实验了N次解决。
总结教训如下:
1.rman脚本中的要设置oracle环境变量,要写rman绝对路径

[root@orcl rman_backup_oracle]# cat his_rman_back.sh 
#!/bin/bash
#su - oracle
source /home/oracle/.bash_profile
export now=`date +%Y_%m_%d_%H:%M`
export ORACLE_SID=ZSQ
/home/oracle/app/oracle/product/12.2.0/dbhome_1/bin/rman target / log=/home/oracle/rman_backup_oracle/DB_Full_Backup_$now << EOF
RUN {
backup device type disk tag 'DBFULL' database;
backup device type disk tag 'DBFULL' archivelog all not backed up delete all input;
ALLOCATE CHANNEL CH1 DEVICE TYPE DISK;
ALLOCATE CHANNEL CH2 DEVICE TYPE DISK;
crosscheck backup;
delete noprompt expired backup;
report obsolete;
delete noprompt obsolete;
RELEASE CHANNEL CH1;
RELEASE CHANNEL CH2;
}
exit
EOF

2.rman脚本的要有在oracle用户下的执行权限,这个很重要的。我自己就是犯了这个错误。

chmod a+x  /home/oracle/rman_backup_oracle/his_rman_back.sh 

3.如有必要检查 crond进程,重启crond.

一点一点从日志上推问题。三板斧简单而有效。

猜你喜欢

转载自blog.csdn.net/louisjh/article/details/80900688
今日推荐