【发布时间】:2015-06-02 13:28:17
【问题描述】:
我的目标是从 Ubuntu 连接到 VMWare 客户机 (OpenSuse) 上的 Oracle 数据库。
目前我只安装了oracledb 驱动程序,并试图运行给定的example connect program。
我所遵循的步骤来自 github INSTALL 页面。到目前为止我所做的是这些:
1) 因为我已经安装了 node.js,所以我跳过了step 3.1。
2) 我已经成功下载并解压了step 3.2 中提到的basic 和sdk。
3) 因为我找不到任何名为 libaio 的包,但我确实找到了 libaio1。所以我安装了libaio1。
4) 我创建了环境变量LD_LIBRARY_PATH,它在我的电脑上的内容是/opt/oracle/instantclient。
5) 如step 3.3 所述;即使在我的情况下这不是强制性的;我创建了两个环境变量:OCI_LIB_DIR,内容为 /opt/oracle/instantclient,OCI_INC_DIR,内容为 /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 的错误 libclntsh.so.12.1。
【问题讨论】:
标签: node.js oracle node-oracledb