精华内容
下载资源
问答
  • Node-oracledb支持Oracle数据库和Oracle客户端的基本和高级功能。 请参阅以获取列表。 node-oracledb模块是开放源代码,由Oracle Corp.维护。它稳定,文档齐全,并且具有全面的测试套件。 安装 请参见和。 文献...
  • 使用node-oracledb的伙伴可以参考本文进行环境安装,前言建议,如你项目是属于node-oracledb进行类客户端开发,可直接放弃该方案,node-oracledb是本机C++编译模块,node-oracledb的运行环境是必须环境,就是说,...

    使用node-oracledb的伙伴可以参考本文进行环境安装,前言建议,如你项目是属于node-oracledb进行类客户端开发,可直接放弃该方案,node-oracledb是本机C++编译模块,node-oracledb的运行环境是必须环境,就是说,就算项目打包出来运行,node-oracledb这些环境依然是你目标机要求环境,相关问题参考官方issue,博主以失败方案为你亲身实验了一波,你应该将node-oracledb作为服务驱动,而不是客户端级别的驱动使用。

    Mac环境

    要求环境:

    node基本环境

    Python 环境,通常MacOS10.12版本以上自带python环境

    成功安装instantclient-basic-macos.x64-12.1.0.2.0.zip 及instantclient-sdk-macos.x64-12.1.0.2.0.zip

    Mac环境node安装

    搭建node环境,建议通过node版本管理工具,当然也可以去官网下载安装包安装,这里介绍mac系统node版本管理工具nvm

    curl工具现在成为了mac内置命令,通常mac电脑自带curl工具,如未安装curl请自行下载安装,

    下载与执行远程安装nvm脚本

    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash

    添加系统变量,mac电脑可用~/.bashrc, ~/.bash_profile, 或者 ~/.zshrc来管理系统变量,在你电脑中用户根文件夹执行

    ls -a

    查看是否已有上诉文件,如无,新建.bash_profile文件,或者另外两种之一亦可,并用vi编辑文件,黏贴以下变量:

    touch .bash_profile //新建.bash_profile文件

    export NVM_DIR="$HOME/.nvm"

    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

    [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion

    source .bash_profile // 重新加载

    重启命令行工具

    nvm -v // 查看nvm工具是否安装成功

    nvm ls-remote // 查看远程可选node安装版本

    nvm install 8.3.0 // 安装node 版本8.3.0

    nvm ls // 查看本机已安装node版本并进行管理

    oracle即时客户端及SDK安装

    进入官网下载Mac版instantclient-basic-macos.x64-12.1.0.2.0.zip和 instantclient-sdk-macos.x64-12.1.0.2.0.zip

    将两个文件夹解压到系统根目录下某一新文件夹,通常为/opt/oracle,如无路径可自行新建,这里将使用路径/usr/local/oracle, 打开路径后,把上述文件拷贝到该路径下,执行以下操作

    cd /usr/local/oracle

    unzip instantclient-basic-macos.x64-12.2.0.2.0.zip

    unzip instantclient-sdk-macos.x64-12.2.0.2.0.zip

    mv instantclient_12_2 instantclient

    cd instantclient

    ln -s libclntsh.dylib.12.1 libclntsh.dylib

    添加系统变量:

    同样是之前的用户根目录下,vi打开文件.bash_profile文件,添加变量

    export OCI_LIB_DIR=/usr/local/oracle/instantclient

    export OCI_INC_DIR=/usr/local/oracle/instantclient/sdk/include

    npm install

    到此oracledb必要环境即安装基本完成,可进入项目执行

    npm install oracledb

    如oracledb安装成功,即可进行node_modules全量安装,否则解决oracledb安装问题。

    npm install

    Windows环境

    要求环境:

    node基本环境

    Visual Studio 2005 redistributable 对应Oracle client 11.2 或 Visual Studio 2010 redistributable及以上版本对应Oracle client 12.1

    Python 2.7 环境

    成功安装instantclient-basic-windows.x64-12.2.0.1.0.zip 及 instantclient-sdk-windows.x64-12.2.0.1.0.zip

    node安装

    搭建node环境,建议通过node版本管理工具,当然也可以去官网下载安装包安装,可选管理工具:nvm-windows或 nodist

    这里介绍使用nvm-windows安装node,安装成功nvm-windows后重启电脑,打开cmd命令界面执行:

    nvm -v

    查看nvm是否安装成功,未成功,请重新安装,接下来执行

    nvm arch 64 //如电脑是32位系统应设置为32

    nvm list available //查看远程可安装node 版本

    选择版本安装node v8.3.0

    nvm install 8.3.0

    node -v // 查看node是否安装成功

    nvm list // 查看当前已安装node 版本及进行相应管理

    Visual studio安装

    Visual Studio 2013 (VC++ 12.0)及以上版本安装,各机型有可能会遇到问题,建议进行全量安装Visual C++ Build Tools,直接避免后期问题,或者强迫症也可以坚持部分安装,只进行安装Visual Studio 2013 redistributable。官网Visual C++ 支持包下载列表

    进入Visual C++ 2015 Build Tools官网下载Visual C++ 2015 Build Tools进行全量安装

    安装过程中可能需要.Net Framework 版本环境要求请按要求自行安装

    python安装

    1 官网下载安装包下载,默认安装在C:\Python27

    2 环境变量添加:

    点击我的电脑—属性—高级系统设置—环境变量—系统变量Path——编辑,添加 C:\Python27 及 C:\Python27\Scripts,变量之间以分号“;”间隔

    b1ae37f000c6?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

    python // 检测是否安装成功

    oracle即时客户端及SDK安装

    1 进入官网下载 instantclient-basic-windows.x64-12.2.0.1.0.zip和 instantclient-sdk-windows.x64-12.2.0.1.0.zip

    2 C盘建立oracle文件夹,将下载的两个安装包全部解压至该文件夹下面,

    3 添加系统环境变量

    Path下添加:C:\oracle\instantclient_12_2;

    新建变量 OCI_INC_DIR=C:\oracle\instantclient_12_2\sdk\include\

    新建变量 OCI_LIB_DIR=C:\oracle\instantclient_12_2\sdk\lib\msvc\

    4 如电脑还有设置防火墙,请查看官网文档.

    npm install

    到此oracledb必要环境即安装基本完成,可进入项目执行

    npm install oracledb

    如oracledb安装成功,即可进行node_modules全量安装,否则解决oracledb安装问题。

    npm install

    关于另一种方式安装win下环境:

    网上相关资料有 windows-build-tools包同样能全自动解决所有部署环境,但是在操作过程中,同样试了一下,但是没有成功,但是有部分人成功了,本文同样列举相关操作进行自动环境部署作为方案之一:

    首先确认你的npm版本应该大于5版本以上,以管理员身份进行操作,导航至你项目下,同样注意电脑.Net Framework版本环境4.5.1及以上:

    // navigate to your app folder

    npm install --global npm // 如npm版本过低,才需执行

    npm install --global --production windows-build-tools

    npm install instantclient

    set PATH=%cd%\instantclient;%USERPROFILE%\.windows-build-tools\python27;%PATH%

    set OCI_LIB_DIR=%cd%\instantclient\sdk\lib\msvc

    set OCI_INC_DIR=%cd%\instantclient\sdk\include

    npm install oracledb

    相关设定命令补充:

    npm config set python python2.7

    npm config set msvs_version 2015 // 你应该检查当前安装的visual studio C++是2015才能设定为2015,否则为你本机安装版本。

    npm install和运行可能遇到问题及其解决方式:

    oracledb安装问题

    通常情况下,安装问题更容易在windows系统下遇到,Mac环境下,npm安装失败,一般都是oracle即时客户端及SDK安装时路径不对或者系统变量未正确设置,这里主要介绍我在window环境下安装遇到的各种问题,仅供参考

    问题一:

    C:\Program Files (x86)\MSBuild...\msbuild.exe未找到,或无默认定义MSBuild之类问题,或者是 node-gyp rebuild errors等等类似错误,即属于visual studio C++ build tools必要工具安装未成功,或node-gyp相关工具未能安装正确

    解决办法: 确认项目node_modules中node-gyp成功安装(一般不会这里出错,必要时,可全局安装执行npm install -g node-gyp), 正常情况下,应该是你的Visual studio c++ 相关环境未能正确安装,建议按之前步骤全部重新安装visual studio C++ build tools。

    问题二:

    未能找到oci.h,或类似xxx.h 文件,造成npm install oracledb 错误。

    解决办法: 电脑环境关于instantclient-basic-windows.x64-12.2.0.1.0.zip和 instantclient-sdk-windows.x64-12.2.0.1.0.zip两解压包环境操作不当,或环境配置错误,建议重新按照上述步骤重新部署当前两种环境。

    oracledb构建问题

    oracledb属于C++原生模块,如你项目属于electron相关项目,项目启动时构建模块时可能遇到类似问题如下:

    构建使用node版本不对

    The module '...'

    was compiled against a different Node.js version using

    NODE_MODULE_VERSION 51. This version of Node.js requires

    NODE_MODULE_VERSION 53. Please try re-compiling or re-installing

    或者是未能找到oci.h,或类似xxx.h 文件定义错误相关

    此类问题都是属于electron未能成功构建本地原生模块构成,可查看官方说明

    方法一:

    // 1. Install electron-rebuild

    npm install --save-dev electron-rebuild

    // 2. Rebuild

    # 每次运行"npm install"出错时,运行这条命令

    ./node_modules/.bin/electron-rebuild

    # 在windows下如果上述命令遇到了问题,尝试这个:

    .\node_modules\.bin\electron-rebuild.cmd

    方法二(不建议使用):

    // 全局设置

    # Electron 的版本。

    export npm_config_target=1.2.3

    # Electron 的系统架构, 值为 ia32 或者 x64。

    export npm_config_arch=x64

    export npm_config_target_arch=x64

    # 下载 Electron 的 headers。

    export npm_config_disturl=https://atom.io/download/electron

    # 告诉 node-pre-gyp 是为 Electron 构建。

    export npm_config_runtime=electron

    # 告诉 node-pre-gyp 从源代码构建模块。

    export npm_config_build_from_source=true

    # 下载所有依赖,并缓存到 ~/.electron-gyp。

    HOME=~/.electron-gyp npm install

    展开全文
  • node-oracle nodejs oracle驱动 支持linux windows 安装 npm install node-oracle 在linux系统编译时候,需要设置ORACLE_HOME和LD_LIBRARY_PATH环境变量,否则在编译和运行会报错。 export ORACLE_HOME=/home/zhs/...
  • Node连接Oracle数据库

    2019-12-10 14:06:49
    之前项目里node连的是SQLserver数据库(用的mssql插件),但有的项目上用的Oracle,因此在兼容性上需要做扩展以支持连接Oracle数据库。这里用的是oracledb插件。 环境准备 根据Oracle数据库版本下载相应的Oracle即使...

    需求背景

    之前项目里node连的是SQLserver数据库(用的mssql插件),但有的项目上用的Oracle,因此在兼容性上需要做扩展以支持连接Oracle数据库。这里用的是oracledb插件。

    环境准备

    1. 根据Oracle数据库版本下载相应的Oracle即使客户端,下载地址为Oracle Instant Client Downloads
      根据系统属性下载
      根据数据库版本下载 basic版本即可
      在这里插入图片描述
      2、解压后放到服务器上适当的位置,复制该文件夹的目录(如C:\oracle\instantclient_12_2),配置系统环境变量
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      配置好保存即可,上面的图是window10的环境变量的设置。window7环境变量要注意的path路径添加时注意;隔开

    3、以上完成后,进入nodeServer文件夹打开.env文件,把DB_TYPE变量设置成oracle在这里插入图片描述
    ##配置完成后, 重新启动node程序即可

    展开全文
  • 作者需要使用electron写一个桌面应用程序,需要用到oracle数据库,oracle在虚拟机中已经配好了,oracle的版本是oracle10g,之后需要在本机上连接oracle,可以使用node-oracledb连接,下面就是作者连接oracle的过程。...

    作者需要使用electron写一个桌面应用程序,需要用到oracle数据库,oracle在虚拟机中已经配好了,oracle的版本是oracle10g,之后需要在本机上连接oracle,可以使用node-oracledb连接,下面就是作者连接oracle的过程。

    下载连接所需要的配置

    连接oracle需要用到两个东西

    • Visual Studio 2013 Redistributable 用于预构建 node-oracledb 二进制文件
    • Oracle Instant Client,oracle客户端,有了这个才能连接oracle
      由于去官网下载需要登录,没有账号的话,注册会等很久,所以可以直接提取。
      链接:https://pan.baidu.com/s/1zOaitTapFilVE32AOA_r4A
      提取码:5sz1

    这里引用node-oracledb官网中的一段话

    Oracle 的标准客户端-服务器网络互操作性允许不同版本的 Oracle 客户端和 Oracle 数据库之间的连接。有关支持的配置,请参阅 Oracle 支持的文档 ID 207303.1。总之,Oracle Client 21 可以连接到 Oracle Database 12.1 或更高版本。Oracle Client 19、18 和 12.2 可以连接到 Oracle Database 11.2 或更高版本。Oracle Client 12.1 可以连接到 Oracle Database 10.2 或更高版本。Oracle Client 11.2 可以连接到 Oracle Database 9.2 或更高版本。创建连接的技术限制可能更灵活。例如,Oracle Client 21 可以成功连接到 Oracle Database 11.2,而 Oracle Client 12.2 可以成功连接到 Oracle Database 10.2。
    在这里插入图片描述

    所以作者这里下载的是Visual Studio 2013 Redistributableoracle client 12.2.0.1.0
    Visual Studio 2013 Redistributable 下载 Chinese - China
    oracle client 12.2.0.1.0到百度云盘提取
    在这里插入图片描述

    双击运行下载好的 Visual Studio 2013 Redistributable,运行成功之后就可以不用管了。
    在这里插入图片描述
    解压 oracle client 12.2.0.1.0,然后将文件放在一个可访问目录。

    测试连接

    自己创建一个node的测试demo

    var oracledb = require('oracledb');
    try {
        oracledb.initOracleClient({ libDir: 'E:\\instantclient-basic-windows.x64-12.2.0.1.0\\instantclient_12_2' });  
        // 这里的位置是oracle client 12.2.0.1.0解压后保存的位置
    } catch (err) {
        console.error('Whoops!');
        console.error(err);
        process.exit(1);
    }
    oracledb.getConnection({
        connectString: "虚拟机ip地址/数据库名称", 
        user: "用户名",
        password: "密码"
    },async function (err, connection) {
        if (err) {
            console.error('error:', err.message);
        } else {
            console.log("连接成功");
            try {
                const res = await connection.execute('select * from table');
                console.log('res:', res);
            } catch (e) {
                console.log('查询失败!');
            }
        }
    });
    

    如果安装的oracle的版本或者其他的东西和作者的不一样,可以去官网看看。
    node-oracledb官方文档

    展开全文
  • node连接oracle数据库,使用oracledb

    千次阅读 2019-01-02 14:50:59
    node连接oracle的资料很少了,当然详细的安装步骤这里有oracledb文档。我只是记录下我的坑,免得再下次再在坑里挣扎,废话不说了,因为我也说不来。这里安装的前提是数据库在其他机器,服务器windows操作系统。 一....

      node连接oracle的资料很少了,当然详细的安装步骤这里有oracledb文档。我只是记录下我的坑,免得再下次再在坑里挣扎,废话不说了,因为我也说不来。这里安装的前提是数据库在其他机器,服务器windows操作系统。

    一.直接安装

    1.下载oracle客户端,从这里oracle客户端。选择可以连接你数据库服务器的客户端版本,还要对应你安装客户端的操作系统,然后下载红框对应文件。

    ​​​​​​

    2.解压两个客户端文件到同一个目录。如下图:

    3.配置环境变量(如果不知道在哪里配置请百度)

          添加两个变量(对应你自己的目录):OCI_INC_DIR=D:\instantclient_11_2\sdk\include

                                                                  OCI_LIB_DIR  D:\instantclient_11_2\sdk\lib\msvc

     

          添加path变量:D:\instantclient_11_2(对应你客户端目录)

    4.安装oracledb模块

    (1) .安装方式一:直接运行如下命令,当然要安装npm包管理

    npm install oracledb

    (2) 安装方式二(这种方式是从源码安装)(上面的安装方法适合有可用的预编译好的包,如果没有上面当然就会安装不成功,比如低版本的nodejs,低版本的服务器 比如我安装的就是windouw server2003他妈十年前就去见鬼的服务器了 被我遇到):      

    (一)安装windows build tools(可能时间有点长):

    npm install --global windows-build-tools

    (如果你的nodejs版本低的话,上面就选择低版本的windows build tools 不然可能没法安装,这里可以找到对应低版本,windows-build-tools),

    安装成功的话继续安装node-gyp模块

    npm  install node-gyp

    最后就可以安装oracledb了

    npm install oracle/node-oracledb#v3.0.1

    (3)如果前两种都特么的安装失败,呵呵呵呵呵了,这里还有一种直接下载源码安装:

    这里找到对应版本的源码下载下来:

    再从这里下载ODPI-C依赖:

    下载下来,分别解压两个文件:生成如下两个文件夹

    然后进入odpi-3.0.0文件夹(当然版本跟你的对应)复制全部文件

    把它放到node-oracledb-3.0.0下的odpi文件夹下;

    最后进入你项目根目录安装(your node-oracledb-3.0.0 path 就是你刚才解压后的node-oracledb-3.0.0目录):

    这一步安装也是从源码安装 只不过是你手动下载编译  所以你需要安装(2)中的编译工具windows-build-tools 和node-gyp模块并且成功安装。

    npm install  your node-oracledb-3.0.0 path 

    (4)如果你的操作系统太低 比如win server 2003 那么是很难编译的  因为编译它需要支持c++11 这个版本以下的操作系统是不支持安装支持c++11的编译器。所以明智的选择是在一个相同位数 相同 oracle客户端的机器上编译好然后复制到目标机器。总之可能会遇到各种各样问题   尤其在几十年前的老机器上。

    就写到这里了  肚子饿 写的乱 望见谅!!!!!!! 

    展开全文
  • node-oracledb 是甲骨文公司官方发布的 OracleNode.js 驱动。目前最新版本 0.2 还是个预览版本,开发团队还在不断完善,包括对 Windows 平台的支持、LOB 支持、批获取/大查询结果集的流处理以及 DRCP 支持等。...
  • Oracle官方声称能够支持高性能的Node.js应用。目前该驱动的最新版本是0.2预览版。目前,开发团队还在不断完善相关功能。\\Node-oracledb 0.2预览版已实现了所支持的基本和高级的Oracle特性,具...
  • Oracle RAC One NodeOracle Data Guard 配置 DBA 指南 作者:Martin Bach按照下文的指导,您可以轻松地结合使用 Oracle RAC One NodeOracle Data Guard 来实现灾难恢复。2011 年 7 月发布Oracle RAC One ...
  • 众所周知,Node可以很轻松的连接PostgreSQL,MySQL,Redis,Mogondb等开源数据库,但是想使用Node连接Oracle一直非常难,不仅仅在Windowns操作系统上,即使是Linux上也非常难编译或运行成功,笔者经过多次失败,最近...
  • node-oracledb 安装

    千次阅读 2017-01-10 15:15:40
    node-oracledb 安装测试
  • node-oracle-master.zip

    2020-09-13 21:08:55
    nodejs 使用官方oracledb库连接数据库。因为编译node 4(或更高版本)需要C++ 11兼容的编译器。Linux 6和RHEL 6上的默认编译器不具备所需的C++ 11支持。安装GCC 4.7或更高版本或升级到Linux 7
  • 使用node-oracledb的伙伴可以参考本文进行环境安装,前言建议,如你项目是属于node-oracledb进行类客户端开发,可直接放弃该方案,node-oracledb是本机C++编译模块,node-oracledb的运行环境是必须环境,就是说,...
  • 当前版本的node-oracle支持node 0.11.x,因此只能使用 0.11.x 或0.10.x版本的node支持最好的还是0.10.x 编译过程基本没有错误和警告,0.11.x出现多处警告,但不影响使用。 #安装步骤: 安装 oracle ...
  • 处的明确说明支持 Runtime Load Balancing (RLB) 而RLB的实现就是采用的RAC,因此node-oracle连接RAC集群是没有问题的。 那么如何实现呢? 其实就是采用JDBC的相同方式进行连接即可。 JDBC and Node-oracledb ...
  • node.js 使用 oracledb 执行事务控制

    千次阅读 2019-02-27 16:44:30
    承接前面一篇介绍node.js封装数据库操作的文章,本文继续封装node.js中通过oracledb进行事务操作的实现过程。oracledb相比mysql好一点的是它的所有操作同时支持回调和Promise两种处理方式,所以编写同一个事务中执行...
  • Oracle贤者 Promise驱动的针对node.js的OracleDB对象建模 目录 -- {}) -计数({}) - select() 模型方法-获取-设置-取消设置-toJSON / setFromJSON-销毁-重新加载 ... Oracle Sage支持Node 6+,您可以通
  • Acria-Oracle-Node-Qt客户端 以C ++ / Qt实现的Acria Oracle Node Client 开发智能合约时最紧迫的问题之一是缺乏实际数据。 但是由于技术限制(例如共识协议),没有区块链能够解决这一主要限制。 Acria Network在...
  • 传统的Oracle RAC被用于多服务器架构体系,这此体系中,不同的rac 实例分别置于不同的服务器上。此架构防止了服务器非计划故障,比如os down,某个节点上的db down,因为透明应用程序故障切换(TAF)会重定向应用连接...
  • 尝试使用了一下访问Oracle,从网上查到说node.js 不支持 通过tnsnames.ora配置来访问Oracle,然后从GitHub中抄袭了一段代码来测试(https://github.com/technoweenie/twitter-node/issues/18),测试一直报错,恳请...
  • Node.js和Oracle 11g 环境搭建笔记

    千次阅读 2017-03-24 13:05:29
    Node.js安装配置Oracle 11
  • node-red-contrib-oracledb-mod是一个程序包,可直接连接到Oracle数据库服务器。 当前,它包含一个查询和一个配置节点,用于连接到Oracle数据库以进行Node-RED存储。 它使用库进行Oracle数据库连接。 目录 安装 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 27,142
精华内容 10,856
关键字:

node支持oracle