I Created a job which calls the shell script and i understood from the other posting this job is going to execute with nobody,
I had done the below testing
Test 1) Shell script calls the SQL file, this SQL file executes the procedure.
Test 2) Shell script calls the sqlldr command.
When i execute the Test cases with , dbms_scheduler Run_job procedure, Test1 is success but Test2 was failed
When i execute the Test cases with, logging into box with owner of the shell & both test cases are successful.
Parent folder & Shell files are given with 777 permissions. & the Oracle db is version 10.2.0.1.0.
Error: STANDARD_ERROR="SQL*Loader-522: lfiopn failed for file (*.log)"
Please provide me your inputs its bit urgent Thanks a lot for your help.
Edited by: 926769 on May 23, 2012 2:27 PM
First of all let's look at your environment ... a totally unpatched version of software that is so old it is in desupport mode. You should upgrade to a fully supported version but, if you can't, at least to 10.2.0.5.
That said without seeing any of your code, or a listing showing permissions on the directory and files, there is insufficient information from which to help you.
Please post ALL information required for us to understand what you are doing an your environment.
But before I decided that NOBODY was doing anything ... I'd shell out to the server from SQL*Plus using the HOST command and verify that permissions are as you believe them to be. There is every reason to believe SQL*Loader is having an issue with your file as identified.
Thanks for the reply damorgan.
I cant upgrade the DB.
but here i tried your second instruction and logged into the box and connected via SQLPLUS, now executed the "host /Run.sh"
this works fine and sqlloader loaded data into table.
now still when i run using the run_job or OEM job, it fails with same error.
You need to post the syntax you used to create the DBMS_SCHEDULER job that calls these shell scripts. Most likely, when the shell scripts work and the (external) job does not, there is a syntax problem in your CREATE_JOB statement.