私の目標は、Ubuntu から VMWare ゲスト マシン (OpenSuse) 上の oracle データベースに接続することです。
今のところ、oracledbドライバーのみをインストールし、指定された接続プログラムの例を実行しようとしました。
私が従う手順は、github INSTALLページからのものです。私が今までやったことはこれらです:
1) node.js が既にインストールされているため、ステップ 3.1をスキップしました。
2)手順 3.2で説明したように、 basicとsdkを正常にダウンロードして展開しました。
3) という名前のパッケージが見つからなかったので、libaio
見つかりましlibaio1
た。ということでインストールしlibaio1
ました。
4) 私は環境変数を作成しました。LD_LIBRARY_PATH
私の PC 上の内容は です/opt/oracle/instantclient
。
5)ステップ 3.3で述べたように。私の場合は必須ではありませんでしたが。OCI_LIB_DIR
with contents/opt/oracle/instantclient
とOCI_INC_DIR
with contentsの 2 つの環境変数を作成し/opt/oracle/instantclient/sdk/include
ました。
6) インストールされてnode-oracledb
います。
サンプル接続プログラムを実行しようとしています。私が使用しているコードはこちらhttps://github.com/ishanatmuz/oracle-testです。実行するnode connect.js
と、このエラーが発生します。
/home/ishan/node.js/oracle-test/node_modules/oracledb/lib/oracledb.js:28
throw err;
^
Error: libclntsh.so.12.1: cannot open shared object file: No such file or directory
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/ishan/node.js/oracle-test/node_modules/oracledb/lib/oracledb.js:23:15)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (modullibclntsh.so.12.1e.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
まだ VMware ゲスト マシンを起動していないため、そのようなデータベースインスタンスが見つからないというエラーが発生することを望んでいました。その後、VMWare マシンを実行し、その中のデータベースに接続します。しかし、代わりにcannot open shared object file
forのエラーが発生していますlibclntsh.so.12.1
。