Oracle InstantClientをRedHatマシンにインストールしようとしました。私はinstantClientbasic、sdk、およびsqlplusを持っていますが、sqlldrが見つかりませんでした。誰かが私がそれをするのを手伝ってくれる?ありがとう
@Alex Pooleがコメントで提供した情報に従って、redhatlinux上のOracleインスタントクライアントインストールにsqlldr
バイナリを追加することができました。重要なのは、sqlldr
バイナリを取得するための完全なOracleクライアント(またはデータベース)インストールにアクセスできることです。
要約すると、Oracle11.2.0.3.0で実行したプロセスは次のとおりです。
Oracleインスタントクライアントのrpmからダウンロードします。
インストール:
yum install Oracle* --nogpgcheck
/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
[root@redhat bin]# pwd
/usr/lib/Oracle/11.2/client64/bin
[root@redhat bin]# scp root@oracleServer:/OracleHome/db/product/11gR2/bin/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バイナリを盗むために既存のフルクライアントインストールを必要としない、受け入れられた回答のより簡単な代替手段:
SQLローダーはOTNから「インスタントクライアントパッケージ-ツール:データポンプを含むSQL * LoaderおよびWorkload Replay Client "
Linuxのリンクは次のとおりです。 Linux x86-64のインスタントクライアントダウンロード
sqlldr
を持つOracle-instantclient12.2-tools
をインストールします。 PATH
に/usr/lib/Oracle/12.2/client64/bin
が含まれていることを確認してください。
それに応じてバージョンを調整します。