Creación de una aplicación Node.js

Para crear una aplicación Node.js que acceda a una instancia de Autonomous Database, debe empezar por configurar un sistema de desarrollo que soporte el acceso de base de datos para que pueda beneficiarse de las funciones de disponibilidad continua y alto rendimiento de Autonomous Database.

Después de configurar el sistema de desarrollo, codifique las conexiones de base de datos y las sentencias SQL en la aplicación para utilizar las funciones de disponibilidad continua y alto rendimiento.

Sugerencia:

Si desea una alternativa de "prueba" a la lectura de los siguientes temas, puede realizar el laboratorio 3 sobre creación y despliegue de la aplicación Node.js en el taller Oracle Autonomous Database Dedicated for Developers and Database Users.

Configuración del sistema de desarrollo Node.js

Para configurar el sistema de desarrollo de modo que la aplicación Node.js pueda utilizar las funciones de disponibilidad continua y alto rendimiento de una instancia de Autonomous Database, realice estos pasos.

  1. Descargue e instale Node.js.
  2. Descargue e instale Oracle Instant Client.
  3. Descargue e instale node-oracledb.
  4. Descargue las credenciales de cliente para la base de datos y haga que estén disponibles para Oracle Instant Client.

Antes de empezar

El sistema de desarrollo debe cumplir determinados criterios para configurarlo correctamente.

Descarga e instalación de Node.js.

Descargue e instale Node.js para el sistema operativo y la arquitectura de su sistema:

  • Oracle Linux:

    Ejecute estos comandos para descargar e instalar la versión más reciente de Node.js:

    sudo yum install -y oracle-release-el7 oracle-nodejs-release-el7
    sudo yum install -y nodejs 
  • Otras OSes y arquitecturas:

    Vaya a la página Descargas de Node.js, seleccione la versión LTS (soporte a largo plazo) más reciente del sistema operativo y la arquitectura de su sistema e instálela.

Descarga e instalación de Oracle Instant Client

Necesita las bibliotecas de Oracle Instant Client versión 19.6 o posterior.

Descargue e instale el paquete básico de Oracle Instant Client para el sistema operativo y la arquitectura del sistema:

  • Oracle Linux:

    Ejecute estos comandos para descargar e instalar el paquete básico de Oracle Instant Client:

    sudo yum -y install oracle-release-el7
    sudo yum -y install oracle-instantclient19.3-basic

    (Si desea ver una lista de todos los paquetes de Instant Client, vaya a http://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/index.html).

  • Otras OSes y arquitecturas:

    1. Vaya a la página Oracle Instant Client Downloadst y seleccione la descarga para el sistema operativo y la arquitectura de su sistema.

    2. En la página de descarga, acepte el acuerdo de licencia de Oracle Technology Network, descargue la versión más reciente del paquete básico y, a continuación, instale siguiendo las instrucciones que aparecen en la parte inferior de la página de descarga.

Descarga e instalación de node-oracledb

Descargue e instale el complemento node-oracledb para Node.js para el sistema operativo y la arquitectura de su sistema:

  • Oracle Linux:

    Ejecute estos comandos para descargar e instalar la versión más reciente de node-oracledb:

    sudo yum install -y oracle-release-el7 oracle-nodejs-release-el7
    sudo yum install -y node-oracledb-node10
  • Otras OSes y arquitecturas:

    Vaya a la página de instalación de node-oracledb, seleccione las instrucciones "My base de datos está en otra máquina" de su sistema operativo y arquitectura y, a continuación, siga las instrucciones de instalación del complemento.

Descarga e instalación de las credenciales de cliente para la base de datos

  1. Descargue el archivo zip que contiene las credenciales de cliente para la base de datos en un directorio seguro de la computadora.

    Este archivo zip está disponible para su descarga en la página Detalles de la base de datos en la consola de Oracle Cloud. Si tiene una cuenta de usuario de Oracle Cloud que le permite acceder a esta página, descargue las credenciales de la siguiente forma. Si no tiene dicha cuenta, debe obtener el archivo zip del administrador de la base de datos, junto con la contraseña que se ha utilizado para proteger el archivo zip.

    1. En el explorador web, inicie sesión en Oracle Cloud y desplácese a la página Detalles de Autonomous Database.

    2. Haga clic en Conexión de base de datos.

    3. En la página Conexión a base de datos, haga clic en Descargar.

    4. En el cuadro de diálogo Download Wallet (Descargar cartera), introduzca una contraseña para la cartera en el campo Password (Contraseña) y confirme la contraseña en el campo Confirm Password (Confirmar contraseña).

      La contraseña debe tener al menos 8 caracteres e incluir al menos 1 letra y 1 carácter numérico o 1 carácter especial.

    5. Haga clic en Descargar para guardar el archivo zip de credenciales de cliente en un directorio seguro.

  2. Después de descargar el archivo zip, siga estos pasos:

    1. Descomprima el archivo zip de credenciales de cliente.

    2. Edite el archivo sqlnet.ora que se proporciona en las credenciales de cliente, sustituyendo "?/network/admin" por la ruta completa del directorio en el que ha descomprimido las credenciales de cliente; por ejemplo, cambie:

      (DIRECTORY="?/network/admin")

      a:

      (DIRECTORY="/users/jdoe/adbcredentials")
    3. Cree la variable de entorno TNS_ADMIN definiendo su valor en la ruta de acceso completa del directorio donde ha descomprimido las credenciales de cliente.

Codificación de conexiones de base de datos y sentencias SQL

Después de configurar el sistema de desarrollo para que soporte la conectividad de la aplicación Node.js a Autonomous Database, siga estos pasos para garantizar el rendimiento óptimo del uso de la base de datos por parte de la aplicación:

  1. Agregue la dependencia en el complemento node-oracledb al archivo package.json de la aplicación.

  2. Codifique conexiones de alto rendimiento y disponibilidad continua.

Agregue la dependencia node-oracledb a package.json

Edite el objeto dependencies en el archivo package.json de la aplicación, agregando el paquete y la versión oracledb. (Utilice el comando npm init para generar package.json si no existe). Por ejemplo:

. . .
"dependencies": {
  . . .,
  "oracledb": "^4.0",
  . . .
},
. . .

Para obtener información detallada sobre el objeto dependencies, consulte la página npm-package.json. Para mostrar la versión de oracledb instalada, puede utilizar el comando npm list; por ejemplo:

npm list -g --depth=0

Codificación de conexiones de alto rendimiento y disponibilidad continua

Para lograr un alto rendimiento y una disponibilidad continua, siga estas directrices al realizar conexiones a la base de datos:

Por ejemplo:

pool = await oracledb.createPool({
  events: true,
  user: "appuser",
  password: process.env.MY_PASSWORD_ENV_VAR,
  connectString: "tp_tls"
});

En este ejemplo se crea un pool para las conexiones al servicio de base de datos tp_tls y se activa FAN definiendo la propiedad events en true.

Recursos adicionales

Para obtener información detallada sobre node-oracledb, vaya a la página Documentación de node-oracledb, que incluye una referencia de API y una guía del usuario.

Para ver ejemplos de código que muestran una amplia variedad de funciones node-oracledb, vaya a la carpeta node-oracledb examples.