Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: How I run a shell script from the scheduler on 10.2.0.2.0 ?
Hello people,
I should have added this bit of information:
"The script runs fine from oracle's crontab." "The script runs fine from a shell owned by oracle."
I'm getting responses telling me to check my env variables and permissions which would be helpful to a UNIX novice.
I have a feeling that no one is using the scheduler to run RMAN scripts.
Tim Hall suggested I take a close look at these files:
$ORACLE_HOME/rdbms/admin/externaljob.ora
$ORACLE_HOME/bin/extJob
Currently I'm setup like this:
bash sol root /h/oracle/product/10r2/bin 31 #
bash sol root /h/oracle/product/10r2/bin 31 # ll
$ORACLE_HOME/rdbms/admin/externaljob.ora
-rw-r--r-- 1 root dba 52 Sep 7 15:29
/h/oracle/product/10r2/rdbms/admin/externaljob.ora
bash sol root /h/oracle/product/10r2/bin 32 #
bash sol root /h/oracle/product/10r2/bin 32 # cat
$ORACLE_HOME/rdbms/admin/externaljob.ora
# externaljob.ora
run_user = rman
run_group = rman
bash sol root /h/oracle/product/10r2/bin 33 # bash sol root /h/oracle/product/10r2/bin 33 #
bash sol root /h/oracle/product/10r2/bin 33 #
bash sol root /h/oracle/product/10r2/bin 33 # ll $ORACLE_HOME/bin/ext*
-rwsr-x--- 1 rman dba 30388 Sep 21 2006
/h/oracle/product/10r2/bin/extjob*
-rwsr-x--- 1 rman dba 30392 Sep 21 2006
/h/oracle/product/10r2/bin/extjobo*
-rwsr-x--- 1 rman dba 34468 Sep 21 2006
/h/oracle/product/10r2/bin/extproc*
-rwxr-xr-x 1 oracle dba 300 Sep 21 2006
/h/oracle/product/10r2/bin/extusrupgrade*
bash sol root /h/oracle/product/10r2/bin 34 # bash sol root /h/oracle/product/10r2/bin 34 # bash sol root /h/oracle/product/10r2/bin 34 #
On my system, the user 'nobody' has no shell so I cannot use nobody.
I created a user named rman:
bash sol root /h/oracle/product/10r2/bin 34 # bash sol root /h/oracle/product/10r2/bin 34 # bash sol root /h/oracle/product/10r2/bin 34 # su - rman Sun Microsystems Inc. SunOS 5.10 Generic January 2005
Jared points out that rman needs access to extproc:
$ ls -la /h/oracle/product/10r2/bin/extproc
-rwsr-x--- 1 rman dba 34468 Sep 21 2006
/h/oracle/product/10r2/bin/extproc
$
$
Here is a demo of rman running his script:
bash sol root /h/oracle/product/10r2/bin 35 # su - rman
Sun Microsystems Inc. SunOS 5.10 Generic January 2005
$
$
$ ls
scripts
$
$
$ scripts/tst.sh
$
$
$ cat scripts/tst.sh
#! /bin/sh
/usr/bin/date > /tmp/tst.sh.out.txt 2>&1 &
exit 0
$
$
$ cat /tmp/tst.sh.out.txt
Fri Sep 7 16:31:23 PDT 2007
$
$ rm /tmp/tst.sh.out.txt
$
I am focused on this error:
ORA-27369: job of type EXECUTABLE failed with exit code: 274662
And I am focused on this exit code: 274662
What does 274662 mean?
If the Scheduler gives me an error like "274662" rather than some English, it's obvious to me the Scheduler is a POS and I should not use it.
And of course,
If I cannot run RMAN from Oracle Scheduler, I'll use cron.
-Owen
On 9/7/07, Jared Still <jkstill_at_gmail.com> wrote:
> On 9/7/07, Owen Smith <owensmith99_at_gmail.com> wrote: > > > > I'd like to run a shell script from the Scheduler in my 10g database. > > Right now it is a simple shell script. > > Eventually it will wrap RMAN commands to back up my DB. > > > > I wrote a simple pl/sql script to create a job: > > > > -- cr_job10.sql > > > > The scheduler, though, errors out with an error which I see in a trace > > file: > > > *** 2007-09-06 17:33:00.175 > > ORA-12012: error on auto execute of job 53267 > > ORA-27369: job of type EXECUTABLE failed with exit code: 274662 > > > > Running external jobs from dbms_scheduler is much like running jobs from > cron: > You must explicitly set the environment, as no environment is inherited. > > See ML Notes *387451.1 and **389685.1.* > > > -- > Jared Still > Certifiable Oracle DBA and Part Time Perl Evangelist >
-- http://www.freelists.org/webpage/oracle-lReceived on Fri Sep 07 2007 - 17:37:29 CDT