调用JOB执行外部脚本报错ORA-27369解决方法
[oracle@sv203 ~]$ more test.sh
#!/bin/bashsource /home/oracle/.bash_profile
/bin/date
BEGIN
dbms_scheduler.create_job(job_name => 'JOB_TEST.sh',
job_type => 'EXECUTABLE',
job_action => '/home/oracle/test.sh',
enabled => TRUE,
auto_drop => FALSE); --->值为TRUE用于激活JOB
END;
/
报错信息 : ORA-27369: 类型为 EXECUTABLE 的作业失败, 退出代码: Permission denied
问题排查 : 一开始以为是文件执行权限问题,后查看不存在这个问题,经上网查找,问题在于 $ORACLE_HOME/rdbms/admin/ 下文件externaljob.ora里面的参数设置有关
解决方法 : (需要用root用户修改)
cd $ORACLE_HOME/rdbms/admin/ ($ORACLE_HOME目录替换成对应的绝对路径)
[oracle@sv203 admin]$ ls -lrt externaljob.ora
-rw-r----- 1 root oinstall 1534 Dec 21 2005 externaljob.ora
修改文件里的两个参数
# vi externaljob.ora
run_user = oracle
run_group = oinstall
修改完后重新调起JOB
BEGIN
dbms_scheduler.run_job('JOB_FLUSH_SEARCH_ENGINES');
END;
/
执行成功!
本文介绍了在调用JOB执行外部脚本时遇到ORA-27369错误的解决方法,通过分析问题原因和提供解决方案,帮助读者解决此类问题。
1950

被折叠的 条评论
为什么被折叠?



