我有一个cronjob被安排在每天凌晨1点25分执行该脚本假定删除Oracle DB中为前一天创建的归档日志。但是它并没有像预期的那样执行。但是,当我在命令提示符中手动执行它时,它会按预期执行并删除归档日志。我希望问题出在脚本作为cronjob连接到RMAN时。但是我不知道如何解决这个问题,请帮我解决这个问题。下面是我用到的东西
操作系统是Susei linux
cron的调度如下
25 01 * * * /x01/rman_backup/mahesh/logde.shlogde.sh中的内容
ORACLE_HOME=/x01/oracle/app/oracle/product/11.2.0/db_1
ORACLE_SID=sec
PATH=$ORACLE_HOME/bin:$PATH
/x01/oracle/app/oracle/product/11.2.0/db_1/bin/rman cmdfile=/x01/rman_backup/mahesh /logdelete.rcvlogdelete.rcv中的内容
connect target /
run
{
delete archivelog all completed before 'trunc(sysdate)';
crosscheck archivelog all;
}
exit;发布于 2019-05-02 07:08:54
必须使用导出来设置环境变量,否则不会设置环境
export ORACLE_HOME=/x01/oracle/app/oracle/product/11.2.0/db_1
export ORACLE_SID=sec
export PATH=$ORACLE_HOME/bin:$PATH此外,我还建议您通过提及sh或ksh来使用您想要执行的shell
25 01 * * * sh /x01/rman_backup/mahesh/logde.sh请查看下面的网址了解更多信息https://oracle-base.com/articles/misc/oracle-shell-scripting
https://stackoverflow.com/questions/16828625
复制相似问题