欢迎投稿

今日深度:

crontab 里无法执行expdp,crontab执行expdp

crontab 里无法执行expdp,crontab执行expdp


编辑个脚本 xxx.sh

#!/bin/sh
rq=`date +%Y%m%d`
filename="test$rq"
expdp system/*** directory=expdump dumpfile=$filename.dmp logfile=$filename.log schemas=test content=data_only


手工可以执行OK,满以为都OK 结果放进了CRONTAB里 第二天却没有执行,被叼毛叼了几句!

原因可能有:

1 环境问题  最好来个  source ~/.bash_profile

2 路径问题  那好 我们来个绝对路径

3 SH问题   EXPDP不执行SH变量 dumpfile=$filename,办法有 dumpfile=xxxooo.dmp  ......   mv xxxooo.dmp   $filename


crontab 自动执行 shell 时, 命令为何不可以执行

找了一个下午终于解决了,
是因为 crontab 的 环境的问题
我在crontab的脚本里添加 以下代码又重启了一下 成功了
SHELL=/bin/bash
#PATH=/sbin:/bin:/usr/sbin:/usr/bin
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
MAILTO=root
HOME=/
。。。。。。。。。。。。。。
依然感谢大家 !!!
还有上面的fdisk -l |grep -c 'Disk'命令是用来获取 电脑 物理磁盘个数的。
 

我写了一个shell备份表,手动可以执行,但是在crontab里不可以执行,报:dbaccess not fount错误

在dbaccess前加上绝对路径
或者在shell脚本里面在执行dbaccess命令前,先改变工作路径到相应位置。
------------------
需要在脚本里增加环境变量设置
set CLIENT_LOCALE=EN_US.CP1252
set DB_LOCALE=EN_US.8859-1
set SERVER_LOCALE=EN_US.CP1252
set DBLANG=EN_US.CP1252
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/3915.html NewsArticle crontab 里无法执行expdp,crontab执行expdp 编辑个脚本 xxx.sh #!/bin/sh rq=`date +%Y%m%d` filename=test$rq expdp system/*** directory=expdump dumpfile=$filename.dmp logfile=$filename.log schemas=test content=data_only 手工可以执...
评论暂时关闭