somemo's diary

プログラマ、雑記、プログラミング関係はLinkから、数式はこっちでまとめていることが多い

【Oracle】sqlplusでリモートのDBにアクセスする【Linux】

前回、WindowsにインストールしたOracleXELinuxからアクセスします。 [準備]  下記URLから、RPMをダウンロードします。   oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm   oracle-instantclient11.2-sqlplus-11.2.0.1.0-1.i386.rpm    URL:http://www.oracle.com/technetwork/jp/topics/linuxsoft-083388-ja.html  ダウンロードした2つのファイルをLinuxにアップロードしておきます。 [インストール]  sqlplusファイルは、basicファイルに依存していますので、  basicファイルからインストールします。  rpm -ivh oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm  rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.1.0-1.i386.rpm [LD_LIBRARY_PATH設定]  通常、「/user/lib」「/lib」にライブラリが配置されています。  ここにないライブラリを使えるようにするために、  使用するライブラリのパスを環境変数「LD_LIBRARY_PATH」に設定します。  sqlplusを実行すると下記エラーが発生します。   sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory  ライブラリが必要らしいです。  他にもいつ様なライブラリを確かめるために、下記コマンドを実行します。   ldd /usr/bin/sqlplus    または、   ldd /usr/lib/oracle/11.2/client/bin/sqlplus  結果、「/usr/lib/oracle/11.2/client/lib/」  に存在するライブラリが必要であることがわかりました。  これをLD_LIBRARY_PATHに設定します。     まず、LD_LIBRARY_PATHの内容を確認します。   echo LD_LIBRARY_PATH  なにも表示されなかったので、LD_LIBRARY_PATHを作成します。   LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client/lib/  次に、環境変数にします。   export LD_LIBRARY_PATH  次回から、パスを追加するには下記コマンドを実行します。   export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:パス [sqlplus実行]  下記フォーマットで実行します。   sqlplus ユーザ/ユーザのパスワード@ホスト名またはIPアドレス:ポート/接続文字列  今回は下記でアクセスできました。   sqlplus system/systemのパスワード@192.168.1.128:1521/XE 以上。