30

Oracle Instant Client バージョン 12.1.0.2 (64 ビット) を Mac (OS X 10.11.5) にインストールする方法

バージョン 12.1.0.2 (64 ビット) バージョンをダウンロードし、ファイルを解凍しました。

/downloads/instantclient の下に次のファイルがあります。

libclntsh.dylib.12.1
libclntshcore.dylib.12.1
libnnz12.dylib
libocci.dylib.12.1
libociei.dylib
libocijdbc12.dylib
libons.dylib
liboramysql12.dylib
ojdbc6.jar
ojdbc7.jar
uidrvci
xstreams.jar
adrci
BASIC_README
genezi

CLIからデータベースに接続できるように、これからInstant Clientの動作バージョンに移行する方法がまったくわかりません。オラクルのウェブサイトの説明は、複雑すぎるようです。

インストール方法を詳しく説明しているブログをいくつか見つけましたが、それらはすべて以前のバージョンの Instant Client のもののようです。やむを得ず、Instant Client の以前のバージョンをダウンロードしましたが、チュートリアルで参照されているファイルがまだ不足しているようです。

Mac で Oracle Instant Client を入手する方法を知っている人はいますか?

4

4 に答える 4

24

ダウンロード可能なファイルが複数あります。リストしたファイルから、「基本」パッケージのみをダウンロードして解凍しました。

CLI (SQL*Plus のことだと思います) を実行するには、そのパッケージも必要です。リストの 4 番目の「Instant Client Package - SQL*Plus: Additional libraries and executable for running SQL*Plus with Instant Client」というタイトルです。 "。

パッケージは、必要なものをすべて同じ場所から解凍すると、すべてのファイルが同じディレクトリに配置されるように配置されています。残念ながら、Safari を使用していて、ダウンロードした特定のファイルを開くように設定している場合、これはうまく機能しません。各 zip ファイルは個別のフォルダーに展開され、名前が増分されます。その後、zipファイルを削除します。

その自動解凍を無効にして手動で行うか、個々のフォルダーから共通のフォルダーにファイルをコピーすることができます。

メイン クライアント ライブラリのシンボリック リンクを作成する必要がある場合もあります。そのフォルダー内から(ターミナルで)次のようにします。

ln -s libclntsh.dylib.12.1 libclntsh.dylib

結合されたフォルダーは、好きな場所に置くことができます。次に、そのフォルダーへのフル パスを PATH と環境変数に追加する必要があります。これを .bash_profile に追加すると、手動で行う必要がなくなります。

これが完了したらsqlplus、どこからでも実行できます。

要約すると:

  1. Safari を使用している場合は、zip ファイルを自動的に開く機能を無効にしてください。Safari->Preferences->Generalから、「ダウンロード後に「安全な」ファイルを開く」チェックボックスのチェックを外します。

  2. instantclient-basic-macos.x64-12.1.0.2.0.zip および instantclient-sqlplus-macos.x64-12.1.0.2.0.zip をダウンロードします。

  3. ターミナルで、ダウンロード ディレクトリに移動します。

  4. 両方のファイルを解凍します。

    MacBook:Downloads alex$ unzip instantclient-basic-macos.x64-12.1.0.2.0.zip
    Archive:  instantclient-basic-macos.x64-12.1.0.2.0.zip
      inflating: instantclient_12_1/BASIC_README  
      inflating: instantclient_12_1/adrci  
      inflating: instantclient_12_1/genezi  
      inflating: instantclient_12_1/libclntsh.dylib.12.1  
      inflating: instantclient_12_1/libclntshcore.dylib.12.1  
      inflating: instantclient_12_1/libnnz12.dylib  
      inflating: instantclient_12_1/libocci.dylib.12.1  
      inflating: instantclient_12_1/libociei.dylib  
      inflating: instantclient_12_1/libocijdbc12.dylib  
      inflating: instantclient_12_1/libons.dylib  
      inflating: instantclient_12_1/liboramysql12.dylib  
      inflating: instantclient_12_1/ojdbc6.jar  
      inflating: instantclient_12_1/ojdbc7.jar  
      inflating: instantclient_12_1/uidrvci  
      inflating: instantclient_12_1/xstreams.jar  
    MacBook:Downloads alex$ unzip instantclient-sqlplus-macos.x64-12.1.0.2.0.zip
    Archive:  instantclient-sqlplus-macos.x64-12.1.0.2.0.zip
      inflating: instantclient_12_1/SQLPLUS_README  
      inflating: instantclient_12_1/glogin.sql  
      inflating: instantclient_12_1/libsqlplus.dylib  
      inflating: instantclient_12_1/libsqlplusic.dylib  
      inflating: instantclient_12_1/sqlplus  
    
  5. 必要に応じて、ディレクトリの名前を変更したり、instantclient_12_1ディレクトリをより永続的な場所に移動したりします。

  6. 現在のセッションのパスに場所を追加し、シェル プロファイル/リソース ファイルにも場所を追加して、すべてのログインで有効にします。

     export PATH=$HOME/Downloads/instantclient_12_1:$PATH
    
  7. 楽しみ。

    MacBook:Downloads alex$ export PATH=$HOME/Downloads/instantclient_12_1:$PATH
    MacBook:Downloads alex$ which sqlplus
    /Users/alex/Downloads/instantclient_12_1/sqlplus
    MacBook:Downloads alex$ sqlplus
    
    SQL*Plus: Release 12.1.0.2.0 Production on Thu Jun 9 16:29:49 2016
    
    Copyright (c) 1982, 2016, Oracle.  All rights reserved.
    
    Enter user-name: 
    

El Capitan はシステム整合性保護 (SIP) を追加しました。その副作用の 1 つは、DYLD_LIBRARY_PATH のエクスポートが機能しないことです。たとえば、シェル スクリプトからの SQL*Plus の実行に影響を与える可能性があります。11g インスタント クライアントには回避策があります。ダウンロード ページの下部にあるインストール ノートは、私が最後に行ったときから変更されており、~/libその問題を回避するには、ライブラリ ファイルをユーザーのディレクトリにハード リンクするように指示されています。幸いなことに、12c クライアントではそのことを心配する必要はないようです。ビルド方法は修正されています。

于 2016-06-08T22:16:13.307 に答える