前两天改写一个Rman备份脚本,直接执行该SHELL没问题,可是在用Crotab装载后就老是不生效。找了半天原因才发现是引用Oracle环境变量出了问题。最后做了个总结如下:
1.环境变量的问题:
下面三个是必不可少的变量,其他的无所谓,没有也一样:
export ORACLE_HOME=/your dir
export ORACLE_SID=your sid
export PATH=$ORACLE_HOME/bin:$PATH
2.这个脚本一定要设成+x的模式。
3.crontab的写法:
有6个域,缺一不可,0和00的效果一样。
4.加完自动执行以后,不必要重启crond服务,它只要开着就行了,crond每分钟会自动搜索/cron下的文件的。
5.用crontab -e以后,既可在/var/spool/cron/ 下见到一个oracle文件(如果是unix,此文件位于/var/spool/cron/crontabs下)。否则肯定是你的crontab写错了。
到时间以后无论执行情况怎么样,会在/var/mail下有一个同用户名的文件,那里是执行结果。