Linux作业调度问题
我安排了一个cron作业,如下所示。它将在Oracle中调用RMAN,然后清除Oracle数据库中1天以前的所有Achivelog。但问题是它不是通过cron作业执行的。但是如果我从提示符执行相同的脚本,它会通过RMAN很好地删除日志。请帮我翻译一下这个剧本Linux作业调度问题,linux,oracle,crontab,suse,rman,Linux,Oracle,Crontab,Suse,Rman,我安排了一个cron作业,如下所示。它将在Oracle中调用RMAN,然后清除Oracle数据库中1天以前的所有Achivelog。但问题是它不是通过cron作业执行的。但是如果我从提示符执行相同的脚本,它会通过RMAN很好地删除日志。请帮我翻译一下这个剧本 05 07 * * * /x01/rman_backup/mahesh/logde.sh 脚本内容如下 #!/bin/bash /x01/oracle/app/oracle/product/11.2.0/db_1/bin/rman cm
05 07 * * * /x01/rman_backup/mahesh/logde.sh
脚本内容如下
#!/bin/bash
/x01/oracle/app/oracle/product/11.2.0/db_1/bin/rman cmdfile=/x01/rman_backup/mahesh /logdelete.rcv
logdelete.rcv的内容如下
connect target /
run
{
delete archivelog all completed before 'trunc(sysdate)';
crosscheck archivelog all;
}
exit;
请有人帮我安排一下。我在SUSE Linux 11版中使用了这个选项。通常,在cronjob中使用输出重定向来收集文件中的错误,例如
06 12***/x01/rman_backup/mahesh/logde.sh>/x01/rman_backup/mahesh/output.txt 2>&1
具体来说,您的问题可能是在cron中找不到logdelete.rcv,因为此作业将在$HOME中执行,因此文件需要在那里。如果不是,请指定它的完整路径。必须对控制台进行一些初始化,但不在cron执行中进行。手动初始化变量或手动在cron行中初始化源配置文件。使用文件的输出重定向查看发生了什么,例如。。。logde.sh>/tmp/log.txt 2>&1像这样吗?06 12***/x01/rman_backup/mahesh/logde.sh>/x01/rman_backup/mahesh/output.txt06 12***/x01/rman_backup/mahesh/logde.sh>/x01/rman_backup/mahesh/output.txt 2>&1Message文件rman.msb未找到请验证ORACLE_HOME是否已正确设置上述两个错误是否应更改?您需要定义执行脚本的二进制文件:06 12***/bin/sh。。。