使用 Node.js 和其他脚本语言连接到自治 AI 数据库
您可以使用多种语言的程序,包括 Node.js、PHP、Ruby、R、Go 和 Perl,连接到专用 Exadata 基础设施上的自治 AI 数据库。使用客户端凭证强制实施安全性。
这些脚本语言具有使用 Oracle Call Interface 库的数据库访问 API 或驱动程序。Oracle Call Interface 库可以来自完整的 Oracle Client 或 Oracle Instant Client。
安装语言驱动程序和客户机库
要从脚本语言连接到专用 Exadata 基础结构上的自治 AI 数据库,请首先安装语言驱动程序和客户端库,如下所示:
-
安装 Instant Client 或完整客户端。全客户端支持的最低版本为版本 11.2.0.4;对于 Oracle Instant Client,请使用版本 12.1.0.2 或更高版本:
Instant Client 适用于大多数应用程序。要安装 Instant Client,请执行以下操作:
-
从“Instant Client Downloads(Instant Client 下载)”页选择所需的体系结构,然后下载基本程序包(可在下载页上找到):Oracle Instant Client
或者,如果基本光全球化限制适合您的使用,请从您所需的架构的下载页面下载基本光包。
-
如果要从源代码构建语言 API 或驱动程序,您可能还需要下载 Instant Client SDK:Oracle Instant Client
-
解压缩您选择的基本程序包。例如,解压缩到‘ C:\instantclient_12_2 ’或‘ /home/myuser/instantclient_18_5 ’。如果您还下载了 SDK,请将其解压缩到同一目录中。
-
在 Windows 上,在 "Environment Variables"(环境变量)窗格的 "System variables"(系统变量)部分中添加
PATH变量的路径(例如,添加 'C:\instantclient_12_2')。在 Windows 8 上,通过导航到“控制面板”>“系统”>“高级系统设置”>“环境变量”来访问PATH变量设置区域。如果安装了多个版本的 Oracle 库,请确保新目录首先出现在路径中。 -
在非 Windows 平台上,创建符号链接(如果不存在)。例如:
cd /home/myuser/instantclient_18_5 ln -s libclntsh.so.18.1 libclntsh.so如果您的系统上没有其他受影响的 Oracle 软件,请将 Instant Client 添加到运行时链接路径。例如:
sudo sh -c "echo /home/myuser/instantclient_18_5 > /etc/ld.so.conf.d/oic.conf" sudo ldconfig或者,在运行应用程序的每个 shell 中设置库路径。例如:
export LD_LIBRARY_PATH=/home/myuser/instantclient_18_5:$LD_LIBRARY_PATH注:Linux Instant Client 下载文件以
.zip文件或.rpm文件形式提供。您可以使用任一版本。
-
-
安装适用于 Oracle Database 的相关语言驱动程序:
-
Node.js :要为 Node.js 安装 node-oracledb,请使用以下页面上的说明: Installing node-oracledb 。
-
ROracle :要安装 ROracle for R,请使用以下页面上的说明:ROracle
-
PHP :要安装 PHP OCI8 for PHP,请使用以下页面上的说明:使用 OCI8 配置 PHP 。
Windows DLL 可在 http://php.net/downloads.php 上使用,也可从 PECL oci8 获取。
-
PHP PDO_OCI :要安装适用于 PHP 的 PHP PDO_OCI,请使用以下页面上的说明:Oracle Functions (PDO_OCI) 。
Windows DLL 可在 PHP 中包含的 http://php.net/downloads.php 上使用。
-
Ruby :要安装 ruby-oci8 for Ruby,请使用以下页面上的说明: Install for Oracle Instant Client
-
DBD for Perl :要安装 DBD::Oracle for Perl,请将
ORACLE_HOME和库搜索路径(例如LD_LIBRARY_PATH或PATH)设置为 Instant Client 目录,然后使用以下页面上的说明: DBD::Oracle 。
-
启用 Oracle Network 连接并获取安全身份证明 (Oracle Wallet)
-
获取客户端安全身份证明以连接到自治 AI 数据库实例。您将获取包含访问自治 AI 数据库所需的客户端安全身份证明和网络配置设置的 zip 文件。您必须保护此文件及其内容,以防止未经授权的数据库访问。获取客户机安全凭证文件,如下所示:
-
ADMIN 用户:单击 DB Connection 。请参阅下载客户端身份证明。
-
其他用户(非管理员):从管理员处获取自治 AI 数据库的 Oracle Wallet。
-
-
提取客户端身份证明 (wallet) 文件:
-
解压缩客户端身份证明 zip 文件。
-
如果使用 Instant Client,请根据需要在 Instant Client 目录下创建
network/admin子目录分层结构。然后将文件移动到此子目录。例如,根据体系结构或客户机系统以及安装 Instant Client 的位置,文件应位于以下目录中:C:\instantclient_12_2\network\admin或者
/home/myuser/instantclient_18_5/network/admin或者
/usr/lib/oracle/18.5/client64/lib/network/admin- 如果使用的是完整的 Oracle Client,请将该文件移动到
$ORACLE_HOME/network/admin。
- 如果使用的是完整的 Oracle Client,请将该文件移动到
-
或者,将解压缩的 wallet 文件放入安全目录中,并将
TNS_ADMIN环境变量设置为该目录名称。
注:在 zip 文件中,仅需要以下文件:
tnsnames.ora、sqlnet.ora、cwallet.sso和ewallet.p12。 -
运行应用程序
-
使用解压缩的
tnsnames.ora文件中指定的数据库用户名、密码和 Oracle Net 连接名称更新应用程序以进行连接。例如,用户atpc_user、 password 和atpc_low作为连接字符串。 -
或者,更改
tnsnames.ora中的连接字符串以匹配应用程序使用的字符串。 -
运行您的应用程序。