您的位置:首页 > 数据库 > Oracle

Oracle的job无法自动运行(转)

2008-05-05 14:07 323 查看
Oracle的job无法自动运行
刚刚接手数据库的维护,最近发现oracle的job都不能自动运行了,手工执行仍然可以。上网查了下,发现原来是oracle的一个bug,计时器溢出了。查看主机:

$ uptime

上午10点27分 运行 560 天 16:45, 1 user, 平均负载:0.52, 0.56, 0.60

已经远超过497天,必须要重新启动系统才行。由于不能轻易的重启系统,所以我就用crontab做了个定时运行的脚本来运行oracle的job。

1,首先查看oracle所要运行job的值:

SQL> select job from user_jobs where what like '%xxxxxxx%';

JOB

----------

422

SQL>

2,编写shell脚本auto_job.sh

$more auto_job.sh

#!/bin/bash

. /export/home/oracle/.profile

sqlplus -s user_name/passwd@sid<<!

exec dbms_job.run(422);

exit

!

3,用oracle用户创建crontab

$ crontab -e

00 03 * * * /export/home/oracle/auto_jobs.sh

测试没有问题,收工!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: