相关文章:
crontab的进程里面无法使用sqlplus,如何设置可以使用呢?
http://bbs.chinaunix.net/thread-815757-1-1.html
crontab中执行sqlplus失效,环境变量的缘故。crontab跟shell的环境变量是不一样的。所以要在脚本中加入
. /root/.bashrc
以导入环境变量。(可能不同的linux系统使用的配置文件名称不一样)
直接将数据库相关度的环境变量在脚本中声明也可以(至少在我的系统上是这样的):
export ORACLE_BASE=/oracle/ora9
export ORACLE_HOME=/oracle/ora9/product/9.2
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=bsmp
export ORACLE_TERM=xterm
当然,以上声明是/root/.bashrc中的 --!
以下是测试脚本:
#!/bin/bash
. /root/.bashrc
sqlplus --help
#---end---
将该脚本放入crontab执行
* * * * * bash /home/test.sh>/home/test.log
显示出sqlplus的帮助信息就说明可以用sqlplus了。