在Linux系统中安装了ORACLE客户端Instant Client,但是它缺少SQL*LOADER、IMP等工具,那么怎么安装这些工具呢?直接从同版本的数据库服务器的安装文件中拷贝sqlldr文件过来,执行sqlldr会报如下错误:
Message 2100 not found; No message file for product=RDBMS, facility=ULMessage 2100 not found; No message file for product=RDBMS, facility=UL[etl@m1 instantclient_10_2]$^C
事实上也只能通过拷贝文件来安装 SQL*LOADER,只不过上面报错,是因为还需要你拷贝、配置下面一些信息文件文件。先从数据库服务器上面找到下面这些信息文件 $ORACLE_HOME/network/mesg下找到tnsus.msb文件,以及$ORACLE_HOME/rdbms/mesg/下的 ulus.msb文件,如下所示:
[oracle@DB-Server mesg]$ cd /database/product/dbhome_1/network/mesg
[oracle@DB-Server mesg]$ ls -lrt tns*
-rwxrwxr-x. 1 oracle oinstall 242709 Sep 9 2005 tnsus.msg
-rwxrwxr-x. 1 oracle oinstall 46592 Sep 9 2005 tnsus.msb
[oracle@DB-Server mesg]$ ls -lrt tns*.msb
-rwxrwxr-x. 1 oracle oinstall 46592 Sep 9 2005 tnsus.msb
[oracle@DB-Server mesg]$ ^C
[oracle@DB-Server mesg]$ cd /database/product/dbhome_1/rdbms/mesg/
[oracle@DB-Server mesg]$ ls -lrt ul*msb
-rwxrwxr-x. 1 oracle oinstall 37888 Sep 9 2005 ulus.msb
[oracle@DB-Server mesg]$
找到这些文件后,把这些文件拷贝到 Instant Client的安装目录下(/usr/local/instantclient_10_2)下相应的目录:/usr/local /instantclient_10_2/rdbms/mesg 以及 /usr/local/instantclient_10_2/network/mesg下。OK,现在可以使用SQL*LOADER了。
现在来看一下,如何配置exp以及imp工具,如果你只是拷贝执行文件到相关目录下,会报如下错误:
此时你需要从数据库服务器的安装目录的rdbms/mesg下拷贝expus.msb、impus.msb过来,问题即可解决。