Oracle并发程序无法写入目录

时间:2014-04-22 07:36:26

标签: oracle rhel

我们有一个Oracle EBS concurrent program,作为applmgr运行,需要使用SQL * Loader加载数据,并将输入数据移动到存档位置:

sqlldr $w_login \
   control=$w_directory/$w_ctrl \
   data=$w_directory/$w_data \
   log=$w_directory/log/$w_data.log

[[ -f $w_directory/log/$w_data.log ]] && \
   mv $w_directory/$w_data $w_directory/archive/$w_data.archive

但是,它在mv部分失败了:

34 Rows successfully loaded.
0 Rows not loaded due to data errors.
0 Rows not loaded because all WHEN clauses were failed.
0 Rows not loaded because all fields were null.

mv: cannot move `/w_directory/w_data.dat' to `/w_directory/archive/w_data.dat.archive': Permission denied

applmgr用户对目录和文件具有写权限:

drwxrwxr-x 14 otheruser othergroup 4096 Apr 16  2012 /w_directory
drwxrwxr-x 14 otheruser othergroup 4096 Apr 16  2012 /w_directory/log
drwxrwxr-x 14 otheruser othergroup 4096 Apr 16  2012 /w_directory/archive
-rwxrwxr-x 14 otheruser othergroup 4096 Apr 16  2012 /w_directory/w_data.dat

$ id applmgr
uid=1003(applmgr) gid=1000(dba) groups=1000(dba),1003(othergroup)

我们可以通过命令行applmgr手动运行上述程序,没有任何问题。但是当作为并发程序运行时,它会因上述错误而失败。我们也已经退回了服务器。

服务器位于RHEL 6.4上。 Oracle EBS是R12.1.3。

0 个答案:

没有答案