cron job无法重启服务

时间:2013-02-13 06:09:56

标签: cron solaris restart

我有一个简单的脚本可以停止和启动服务(Oracle Hyperion)

#!bin/ksh

/path/to/dir/stop.sh

sleep 1200

/path/to/dir/start.sh

我已经安排了它每晚都运行,但之后数据库连接存在问题。但是当我手动运行stop.shstart.sh时,就没有这样的问题。显然这份工作没有完全完成。

以下是crontab -l

的输出
00 02 * * * /export/home/oracle/scheduled_restart.sh

有人可以就此问题提出建议吗?感谢。

1 个答案:

答案 0 :(得分:1)

在执行完全相同的代码期间,cron作业与命令行不同的常见原因是环境,特别是ORACLE_SID,TWO_TASK,LD_LIBRARY_PATH等变量。

假设oracle用户拥有crontab: 当一个作业由crond运行时,它就相当于suracle,而不是suracle。尝试做一些事情以确保命令提供oracle用户在登录期间通常会提供的所有内容。

要了解发生了什么:

/export/home/oracle/scheduled_restart.sh && set > /tmp/my_variables.txt

如果/bin/sh文件是可执行的,则不需要/export/home/oracle/scheduled_restart.sh。 它应该在第1行有一个shebang。例如#!/bin/ksh用于korn shell或你使用的任何shell。