Oracle 安装sql加载器linux

Oracle 安装sql加载器linux,oracle,oracle11g,sql-loader,Oracle,Oracle11g,Sql Loader,我试图在redhat机器上安装Oracle instant client。我有instantClient basic、sdk和sqlplus,但找不到任何sqlldr。有人能帮我吗? 感谢根据Alex Poole在评论中提供的信息,我能够将sqlldr二进制文件添加到redhat linux上的Oracle即时客户端安装中。关键是访问完整的oracle客户端(或数据库)安装,从中获取sqlldr二进制文件 总之,以下是我使用Oracle 11.2.0.3.0的过程: 安装Oracle即时客户端

我试图在redhat机器上安装Oracle instant client。我有instantClient basic、sdk和sqlplus,但找不到任何sqlldr。有人能帮我吗?
感谢

根据Alex Poole在评论中提供的信息,我能够将
sqlldr
二进制文件添加到redhat linux上的Oracle即时客户端安装中。关键是访问完整的oracle客户端(或数据库)安装,从中获取
sqlldr
二进制文件

总之,以下是我使用Oracle 11.2.0.3.0的过程:

安装Oracle即时客户端 从oracle即时客户端RPM下载:

  • oracle-instantclient11.2-basic-11.2.0.3.0-1.x86_64.rpm
  • oracle-instantclient11.2-jdbc-11.2.0.3.0-1.x86_64.rpm
  • oracle-instantclient11.2-devel-11.2.0.3.0-1.x86_64.rpm
  • oracle-instantclient11.2-sqlplus-11.2.0.3.0-1.x86_64.rpm
安装:

yum安装oracle*--nogpgcheck

创建Oracle环境变量 在
/etc/profile.d/oracle.sh

export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export TNS_ADMIN=$ORACLE_HOME/network/admin
从完整的Oracle客户端/数据库复制sqlldr和消息文件 试试看:

[root@redhat bin]# sqlldr
Message 2100 not found; No message file for product=RDBMS, facility=ULMessage 2100 not found; No message file for product=RDBMS, facility=UL
我们需要从Oracle数据库复制
ulus.msb
文件。但首先我们需要创建适当的目录结构:

[root@redhat client64]# pwd
/usr/lib/oracle/11.2/client64
[root@redhat client64]# mkdir -p rdbms/mesg
[root@redhat client64]# scp root@oracleServer:/OracleHome/db/product/11gR2/rdbms/mesg/ulus.msb rdbms/mesg/
消息文件就位后,请重试:

[root@redhat client64]# sqlldr

SQL*Loader: Release 11.2.0.3.0 - Production on Tue Oct 20 10:12:55 2015

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Usage: SQLLDR keyword=value [,keyword=value,...]
....

成功

接受答案的更简单的替代方案,即不需要现有的完整客户端安装来窃取sqlldr二进制文件:

您可以在名为“instant client package-Tools的单独即时客户端软件包中从OTN下载SQL loader:包括数据泵、SQL*loader和工作负载回放客户端”


这里是linux的链接:

安装
oracle-instantclient12.2-tools
,它具有
sqlldr
;并确保您的
路径包含
/usr/lib/oracle/12.2/client64/bin


相应地调整版本。

sqlldr
是服务器安装的一部分。At sqlldr不作为即时客户端的组件列出。它可能在完整客户端安装中可用。@ShannonSeverance,我在哪里可以找到完整客户端?显然,这有点像是在即时客户端中添加SQL*加载器-我没有尝试过,也不提倡这样做。但无论如何,你都需要一个完整的客户;你可以从中得到它,所以你也可以直接使用它。在这样做之前,您是否考虑过使用外部表?虽然有效,但有些步骤是不需要的。您只需使用基本客户端zip文件,无需安装任何内容:将instantclient-basic-linux.x64-12.1.0.2.0.zip解压缩到./instantclient/,只需添加文件夹./instantclient/rdbms/mesg/文件夹和文件./instantclient/rdbms/mesg/ulus.msb,然后将./instantclient文件夹添加到PATH和LD_LIBRARY_路径变量中。当使用现有的已接受答案为旧问题添加答案时,讨论您的答案的不同之处以及它为问题带来的新信息可能会有所帮助。例如,您提供的链接是否比Alex在评论中留下的链接更好?
[root@redhat client64]# sqlldr

SQL*Loader: Release 11.2.0.3.0 - Production on Tue Oct 20 10:12:55 2015

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Usage: SQLLDR keyword=value [,keyword=value,...]
....