Windows环境下NodeJs的Oracle数据库驱动node-oracledb的安装

  • Post author:
  • Post category:其他



node.js的发展如日中天,oracle作为老牌数据库虽然很庞大,大家不愿意用,但是项目需要,经常又必须用。怎么搞?
oracle官方已经开发了相应的库,

https://github.com/oracle/node-oracledb/

,本文介绍一下具体安装方法,部分翻译其文档,结合部分个人使用体会。
具体的方法可参考这个:

http://my.oschina.net/airmount/blog/277669
——————————————————————————-
我想说的是安装过程中的注意事项。

一、64位与32位的注意


Oracle instant client 是 Oracle 提供的访问数据库的 C++接口
如果你的node是64位的选择安装x64的。
如果你的node是32位的选择ia32的。在64位环境下使用32位的请使用这个命令

npm install --arch=ia32 oracle

查看Node是32的还是64位的:https://github.com/joeferner/node-oracle/issues/154

node -e "console.log(process.arch, require('os').arch())"

二、PATH的设置


c:\apps\instantclient_12_1\vc10;c:\apps\instantclient_12_1;




如果编译成功,在这个库的Lib目录下会出现一个

oracle_bindings.node


如果运行时出现


The specified procedure could not be found.


是因为PATH设置不正确,要确保





Path 中 c:\instantclient_12_1\vc11 在 c:\instantclient_12_1 前面. 如果Path中存在其他版本的oracle client配置,请保证 “c:\instantclient_12_1\vc11;c:\instantclient_12_1” 在 oracle client前面.












因为OCI.dll有多个,确保用到的是我们所安装的目录里的


,如果不确定是哪个,可以用depends http://www.dependencywalker.com/ 查一下



















版权声明:本文为v6543210原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。