もう迷わない Oracle DB接続 CData Drivers & CData Syncを設定する
本記事はCDataが提供する「CData Software Blog」に掲載された「もう迷わない!CData Drivers & CData Sync のOracle DB 接続前設定」を再編集したものです。
本記事はCData Software Calendar 2024 12月14日の記事です。
CData 製品をOracle DB への接続のために導入検証する段階で、次のようなエラーが発生する場合があります。
Can't load binary library: no System.Data.CData.OracleOCIw in java.library.path
もしくは次のようなエラーも。
libaio.so.1: cannot open shared object file
これらのエラー原因はOracleドライバ/コネクタの動作に必要なネイティブライブラリがCData製品から参照できなかった場合に発生するエラーになります。CData製品からネイティブライブラリを参照するためには環境変数を設定する、または関連ライブラリをインストールする必要があります。ご利用している製品やプラットフォーム(OS)によって微妙に設定する環境変数名や値が異なるため本記事では各パターンでの設定方法についてまとめていきます。画面右側の目次からご利用しているOS、CData製品のリンクから設定手順を参照ください。
Windows × CData Driversの場合の設定手順
1. CData Driversをインストール後、次のフォルダ内に System.Data.CData.OracleOCIw.dllなどの*.dllファイルがあることを確認する
- 64bit の場合: C:\Program Files\CData\<製品名>\lib\native\win\x64
- 32bit の場合: C:\Program Files\CData\<製品名>\lib\native\win\x86
2. Windowsの検索ボックスから[環境変数を編集]を開く
3. 次の環境変数を設定する
環境変数名 | 環境変数の値 |
PATH | 64bit の場合: C:\Program Files\CData\<製品名>\lib\native\win\x64 |
32bit の場合: C:\Program Files\CData\<製品名>\lib\native\win\x86 |
Windows × CData Syncの場合の設定手順
1. CData SyncでOracleコネクタをインストール
2. 次のフォルダ内にSystem.Data.CData.OracleOCIw.dllなどの*.dllファイルがあることを確認する
- 64 bit の場合: C:\ProgramData\CData\sync\libs\oracleoci\x64
- 32 bit の場合: C:\ProgramData\CData\sync\libs\oracleoci\x86
3. Windowsの検索ボックスから[環境変数を編集]を開く
4. 次の環境変数を設定する
環境変数名 | 環境変数の値 |
PATH | 64bit の場合: C:\ProgramData\CData\sync\libs\oracleoci\x64 |
32bit の場合: C:\ProgramData\CData\sync\libs\oracleoci\x86 |
5. 環境変数を反映するためSyncを再起動
Linux × CData Driversの場合の設定手順
1. CData Driversをインストール後、次のディレクトリ内に libSystem.Data.CData.OracleOCIw.soなどの*.soファイルがあることを確認する
- 64 bit の場合: <インストールディレクトリ>/lib/native/unix/x64
- 32 bit の場合: <インストールディレクトリ>/lib/native/unix/x86
2. 利用環境に応じて次の環境変数を設定する
環境変数名 | 環境変数の値 |
LD_LIBRARY_PATH | 64bit の場合: <インストールディレクトリ>/lib/native/unix/x64 |
32bit の場合: <インストールディレクトリ>/lib/native/unix/x86 |
3. もし環境変数設定後も次のようなエラーが発生する場合、このページの[Linuxユーザーへの注意事項]内にあるコマンドを実行し、依存しているライブラリをインストール
libaio.so.1: cannot open shared object file
Linux × CData Syncの場合の設定手順
1. CData SyncでOracleコネクタをインストール
2. 次のディレクトリ内にlibSystem.Data.CData.OracleOCIw.soなどの*.soファイルがあることを確認する
- <インストールディレクトリ>/libs/oracleoci/<バージョン番号>
3. Syncの実行環境などに応じて次の環境変数を設定する
環境変数名 | 環境変数の値 |
LD_LIBRARY_PATH | ・<インストールディレクトリ>/libs/oracleoci/<ビルド番号> |
3-a. もしsystemd経由で起動している場合やAMI利用の場合、/etc/systemd/system/cdatasync.service の[Service] セクションに以下を追加
Environment="LD_LIBRARY_PATH=<インストールディレクトリ>/libs/oracleoci/<ビルド番号>"
4. 環境変数を反映するためSyncを再起動
5. もし環境変数設定後も次のようなエラーが発生する場合、このページの[Linuxユーザーへの注意事項]内にあるコマンドを実行し、依存しているライブラリをインストールし再度Syncを再起動する
libaio.so.1: cannot open shared object file
Mac × CData Driversの場合の設定手順
1. CData Driversをインストール後、<インストールディレクトリ>/lib/native/mac内にlibSystem.Data.CData.OracleOCIw.dylibなどの*.dylibファイルがあることを確認する
- ※<インストールディレクトリ> はdmg インストーラ利用の場合 /Applications/<製品名> がデフォルト
2. 利用環境に応じて次の環境変数を設定する
環境変数名 | 環境変数の値 |
DYLIB_LIBRARY_PATH | ・<インストールディレクトリ>/lib/native/mac |
Mac × CData Syncの場合の設定手順
1. CData SyncでOracleコネクタをインストール
2. 次のフォルダ内にlibSystem.Data.CData.OracleOCIw.dylibなどの*.dylib ファイルがあることを確認する
- <インストールディレクトリ>/libs/oracleoci/<バージョン番号>
3. Sync の実行環境などに応じて次の環境変数を設定する
環境変数名 | 環境変数の値 |
DYLIB_LIBRARY_PATH | ・<インストールディレクトリ>/libs/oracleoci/<ビルド番号> |
4. 環境変数を反映するためSync を再起動