このガイドでは、Oracle DatabaseへOCI(Oracle Call Interface)で接続するために必要な Oracle Instant Client を、macOSとWindowsへインストールする手順を説明します。
初心者の方は、まず Basicパッケージ だけをインストールしてください。SQL*Plusや開発用ヘッダーが必要な場合だけ、追加パッケージをインストールします。
このガイドはOracle Instant Clientのダウンロードページをもとにしています。パッケージのバージョンやファイル名は更新されるため、画面に表示される最新の対応版を選択してください。
OCIは、アプリケーションからOracle Databaseへ接続するためのAPIです。OCI自体を単独でインストールするのではなく、OCIライブラリを含むOracle Instant Clientをインストールします。
Oracleの公式ダウンロードページを開きます。
| パッケージ | 用途 |
|---|---|
| Basic | OCI接続に必要なライブラリ一式。通常はこちらを選択します。 |
| Basic Light | Basicの小さい版。利用できる文字コードが限られるため、日本語データを扱う場合はBasicを推奨します。 |
「ターミナル」を開き、次のコマンドを実行します。
uname -m
表示結果に応じて、ダウンロードページを選びます。
| 表示結果 | Macの種類 | ダウンロードページ |
|---|---|---|
arm64 |
Apple Silicon(M1/M2/M3/M4など) | macOS ARM64 |
x86_64 |
Intel Mac | macOS Intel x86 |
Apple Silicon MacではARM64版、Intel MacではIntel版を使用してください。異なる種類のパッケージを選ぶと、アプリケーションからライブラリを読み込めないことがあります。
使用しているMacに合ったダウンロードページを開きます。
Basic Package のDMGファイルをダウンロードします。
現在のmacOS版はDMG形式です。ファイル名には
macos.arm64(Apple Silicon)または
macos.x64(Intel)が含まれます。
ダウンロードしたBasicのDMGファイルをダブルクリックします。
追加パッケージもインストールする場合は、すべてのDMGファイルをダブルクリックしてマウントします。
ターミナルで、BasicのDMGがマウントされた場所へ移動します。
cd "/Volumes/instantclient-basic-macos.arm64-<バージョン>"
Intel Macの場合は、フォルダー名の arm64 の部分が
x64
になります。実際のフォルダー名は、Finderの「場所」または次のコマンドで確認できます。
ls /Volumes
sh ./install_ic.sh
install_ic.sh は、マウントされたInstant
Clientのファイルをインストール先へコピーします。追加パッケージをマウントしている場合も、スクリプトは1回だけ実行してください。
hdiutil unmount "/Volumes/instantclient-basic-macos.arm64-<バージョン>"
Oracleの案内では、インストール先の例として
~/Downloads/instantclient_23_26
のようなフォルダーが使われています。インストール先は、後でアプリケーションの設定に指定できるよう、メモしておいてください。
<インストール先>
を実際のパスに置き換えて、次のコマンドを実行します。
OCI_DIR="$HOME/Downloads/instantclient_23_26" test -f "$OCI_DIR/libclntsh.dylib" && echo "Oracle Instant Client is installed." ls "$OCI_DIR"/libclntsh.dylib*
Oracle Instant Client is installed.
が表示され、libclntsh.dylib
で始まるファイルが表示されれば、OCIライブラリは配置されています。
通常の64bit Windowsを使用している場合は、次のページを開きます。
Basic Package のZIPファイルをダウンロードします。
SQL*Plusなどが必要な場合は、同じバージョンの追加パッケージもダウンロードします。
32bitアプリケーションから接続する必要がある場合だけ、Windows 32-bit版を検討します。64bit版と32bit版は混在させないでください。
最新のInstant ClientをWindowsで使用する場合、Microsoft Visual C++ Redistributableが必要です。
自分のWindowsが64bitの場合は、通常 X64
のインストーラーを選びます。インストーラーを実行し、画面の指示に従ってインストールしてください。すでにインストール済みの場合は、修復または更新を選択できます。
C:\oracle フォルダーを作成します。
ダウンロードしたBasicのZIPファイルを展開します。
例として、最終的に次のような構成になるようにします。
C:\oracle\instantclient_23_26\oci.dll C:\oracle\instantclient_23_26\oraociei23.dll
oci.dll がInstant
Clientフォルダーの直下にあることを確認してください。C:\oracle\instantclient_23_26\instantclient_23_26\oci.dll
のように、フォルダーが二重になっている場合はPATHに指定する場所を調整します。
Windowsの検索ボックスに「環境変数」と入力します。
「システム環境変数の編集」 を開きます。
「環境変数」 ボタンをクリックします。
自分のユーザーだけで使う場合は「ユーザー環境変数」、PC上の全ユーザーやサービスで使う場合は「システム環境変数」の
Path を選択し、「編集」
をクリックします。
「新規」 をクリックし、Instant Clientのフォルダーを追加します。
C:\oracle\instantclient_23_26
「OK」を押して、開いている設定画面をすべて閉じます。
すでに開いているターミナルやアプリケーションを終了し、新しく起動します。PATHの変更は、すでに起動しているアプリケーションには反映されません。
複数のOracleクライアントをインストールしている場合は、使用したいInstant ClientのフォルダーをPATHの先頭側に置いてください。
新しくPowerShellを開き、次のコマンドを実行します。
$ociDir = "C:\oracle\instantclient_23_26" Test-Path "$ociDir\oci.dll"
True
と表示されれば、OCIの主要ライブラリが存在します。PATHにも追加されているか確認する場合は、次を実行します。
$env:Path -split ';' | Where-Object { $_ -eq $ociDir }
Instant Clientのインストールが完了しても、接続先の情報がなければデータベースへ接続できません。データベース管理者から、次の情報を確認してください。
ホスト名またはIPアドレス
ポート番号(一般的な初期値は 1521)
サービス名またはSID
ユーザー名
パスワード
TLSやウォレットが必要かどうか
tnsnames.ora を使用する環境では、Oracle
Netの設定ファイルをInstant Clientの network/admin
フォルダーへ置く方法があります。使用するアプリケーションが別の設定方法を指定している場合は、そのアプリケーションの手順を優先してください。
macOSのCPUに合ったパッケージを選んでいるか確認する。
Windowsでは、PATHに追加したフォルダーの直下に
oci.dll があるか確認する。
PATHを変更した後に、ターミナルやアプリケーションを再起動する。
64bitアプリケーションには64bit版、32bitアプリケーションには32bit版を使用する。
macOSのGUIアプリケーションでは、環境変数ではなくアプリケーション側のライブラリ設定が必要な場合がある。
Microsoft Visual C++ Redistributableをインストールまたは更新してください。Oracle Instant Clientのバージョンに対応したランタイムが必要です。
Basic Lightでは対応文字セットが限定されます。日本語を扱う場合は、Basicパッケージを使用してください。アプリケーションやデータベースの文字コード設定も確認してください。
Instant Clientのインストールとは別に、次を確認します。
ホスト名とポート番号が正しいか
VPNや社内ネットワークに接続しているか
ファイアウォールで通信が遮断されていないか
サービス名またはSIDが正しいか
データベース側で接続元のIPアドレスが許可されているか