crontab的问题,请教大家

dingjiahappy 2010-01-05 04:52:48
环境:AIX DB2
ksh可以单独执行,且备份成功,但通过crontab就不能,但试着在crontab后加>>/mesedu/log.txt,可以看到log.txt文件生成。请大家指点指点了,谢谢!

mesedu@CIMHIS1-6:/mesedu> cat BACKUP_MES_EDU.ksh
db2 backup database mes online to /BACKUP/edu with 1 buffers buffer 0 parallelism 1 without prompting
mesedu@CIMHIS1-6:/mesedu> ls -l
total 88
drwxr--r-- 2 mesedu db2adm 256 Feb 01 2008
drwxr-xr-x 2 root system 256 Jun 08 2009 20090608data
-rwxr-xr-x 1 mesedu db2adm 108 Jan 05 11:51 BACKUP_MES_EDU.ksh
drwx--x--x 2 mesedu db2adm 256 May 31 2009 Mail
-rw-r--r-- 1 mesedu db2adm 0 May 14 2009 N
-rwxr----- 1 mesedu db2adm 1753 Jul 29 2008 PERF_ExecuteTime_S.ksh
-rwxr----- 1 mesedu db2adm 12288 May 13 2009 S0000183.LOG
-rwxr----- 1 mesedu db2adm 1006 May 13 2009 check_tbs.awk
drwxr-xr-x 7 mesedu db2adm 256 Jan 31 2008 db
-rw-r--r-- 1 mesedu db2adm 0 Jan 05 11:59 log.txt
drwxr-xr-x 2 mesedu db2adm 256 Jun 01 2007 lost+found
drwxr-xr-x 2 mesedu db2adm 4096 Apr 15 2008 repl
-rw-r--r-- 1 mesedu db2adm 1891 Feb 18 2009 smit.log
-rw-r--r-- 1 mesedu db2adm 439 Feb 18 2009 smit.script
-rw-r--r-- 1 mesedu db2adm 689 Feb 18 2009 smit.transaction
drwxrwsr-t 19 mesedu db2adm 4096 Mar 10 2008 sqllib
drwx------ 4 mesedu db2adm 256 Jun 04 2007 temptbs
mesedu@CIMHIS1-6:/mesedu> crontab -l
59 11 * * * /mesedu/BACKUP_MES_EDU.ksh
...全文
108 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
yifanernei 2010-01-07
  • 打赏
  • 举报
回复
不是可以生成log文件了吗?
/mesedu/BACKUP_MES_EDU.ksh >log.txt 2>&1
看一下日志文件应该可以得出是什么问题了吧
panzifei 2010-01-06
  • 打赏
  • 举报
回复
db2我不太清楚啊,比如管理oracle的用户要设置一些环境变量,如:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=DBNAME #数据库名
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
等等,
sybase的也是类似的要设置一些变量,不太清楚你的情况是不是因为某些库文件之类的路径变量没有导致执行命令出错或者其它原因。
dingjiahappy 2010-01-06
  • 打赏
  • 举报
回复
加入所有db2操作要用到的环境变量?
这些变量我从哪儿能找到?我不怎么懂,麻烦再耐心指教,谢谢!
panzifei 2010-01-06
  • 打赏
  • 举报
回复
加入所有db2操作要用到的环境变量,我以前写脚本做sybase的自动备份时发现是这样的
steptodream 2010-01-06
  • 打赏
  • 举报
回复
export PATH 这句貌似不对哦
export $PATH
dingjiahappy 2010-01-06
  • 打赏
  • 举报
回复
ksh改成这样也还不行
mesedu@CIMHIS1-6:/mesedu> cat BACKUP_MES_EDU.ksh
#!/usr/bin/ksh
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.

export PATH
db2 connect to mes
db2 backup database mes online to /BACKUP/edu with 1 buffers buffer 0 parall
elism 1 without prompting
xxs_elf 2010-01-06
  • 打赏
  • 举报
回复
感觉是环境变量问题,脚本前面的db2备份命令没能正常执行 db2 backup database mes online to ...

可以在脚本前加几句输出db2要用的的环境变量,看一下log.txt里是否有值。
steptodream 2010-01-05
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 panzifei 的回复:]
没用过db2,是不是要在脚本里加上执行db2命令要用到的环境变量呢?在备份脚本前面加上一些显示变量值并记录到日志的命令看看那些环境变量是不是空的。
[/Quote]
这个也可能 代码前面export一下环境变量
panzifei 2010-01-05
  • 打赏
  • 举报
回复
没用过db2,是不是要在脚本里加上执行db2命令要用到的环境变量呢?在备份脚本前面加上一些显示变量值并记录到日志的命令看看那些环境变量是不是空的。
dingjiahappy 2010-01-05
  • 打赏
  • 举报
回复
#!/usr/bin/ksh
在ksh裏面加了這個還是不行
steptodream 2010-01-05
  • 打赏
  • 举报
回复
BACKUP_MES_EDU.ksh
在这个文件前面加上
#!/path/ksh
yifanernei 2010-01-05
  • 打赏
  • 举报
回复
脚本中命令使用全路径?

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧