2

我有包含下一个内容的 .sh 文件:

#!/bin/bash    
echo -------- uploader.sh v 0.1 --------
ORACLE_HOME=/opt/app/oracle/product/10.2.0/db_1/bin/
export ORACLE_HOME
PATH=$ORACLE_HOME
export PATH

sqlldr userid=PR/0611@database control=control_file.ctl LOG=fb_log.log errors=100

所以,我想运行 sql loader 并上传数据。当我运行 uploader.sh 时,我收到来自 unix 的下一条消息:

未找到消息 2100;没有产品=RDBMS 的消息文件,设施=ULMessage 2100 未找到;没有产品消息文件=RDBMS,设施=UL

我已经阅读并得出结论认为问题出在环境变量中。你能帮我解决这个错误吗?

4

3 回答 3

9

更改此行

ORACLE_HOME=/opt/app/oracle/product/10.2.0/db_1/bin/

ORACLE_HOME=/opt/app/oracle/product/10.2.0/db_1

看到它

还要检查您的系统上是否有 ORAUS.MSB

于 2012-05-02T12:18:18.713 回答
1

聚会迟到了,但我今天在 Windows 上遇到了类似的问题,发现很多帖子都提到了 ORAUS.MSB,但我已经有了。为了解决这个问题,我从另一台机器上复制了 ULUS.MSB - 可能会对某人有所帮助。

于 2020-04-01T08:29:01.973 回答
0

在 shell 中声明将被执行并在 sqlldr 中进行调用的环境变量。它对我有用。

例子:

#!/bin/bash
set +vx

LD_LIBRARY_PATH=/oracle/app/oracle/product/11.2.0/client_1/lib
ORACLE_HOME=/oracle/app/oracle/product/11.2.0/client_1
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:$LD_LIBRARY_PATH:$ORACLE_HOME/rdbms/mesg
export LD_LIBRARY_PATH
export ORACLE_HOME
export PATH

sqlldr userid=USER/PWD@BANK control=control_file.ctl LOG=fb_log.log errors=100
于 2019-06-04T12:12:27.110 回答