Connect Node.js, and Other Scripting Languages Without a Wallet

You can use programs in different languages, including Python, Node.js, PHP, Ruby, R, Go, and Perl to connect to an Autonomous Database instance using TLS authentication without a wallet.

These scripting languages have database access APIs or drivers that use the Oracle Call Interface libraries. The Oracle Call Interface libraries can be either from the full Oracle Client or from Oracle Instant Client.

Note

Oracle Call Interface (OCI) clients support TLS authentication without a wallet if you are using the following client versions:
  • Oracle Instant Client/Oracle Database Client 19.13 - only on Linux x64

  • Oracle Instant Client/Oracle Database Client 19.14 (or later) and 21.5 (or later) - only on Linux x64 and Windows

  1. Install Oracle Instant Client.
    1. Got to the Oracle Instant Client page and click Download Now: Oracle Instant Client
    2. On the Oracle Instant Client Downloads page, select your platform.

      For example, under Instant Client for Linux, select the Instant Client for Linux x86-64 architecture (for this example, to download the Linux x86-64 version).

    3. Under Version 19.14.0.0.0 (Requires glibc 2.14), select an Instant Client package to download.
    4. If you are building a language API or driver from source code, you may also need to download the Instant Client SDK Package version 19.14: Oracle Instant Client
    5. Unzip the base package you selected. If you also download the SDK, unzip it in the same directory.
    6. On Linux, create a symbolic link if it does not exist. For example:
      cd /home/myuser/instantclient_19_14
      ln -s libclntsh.so.19.1 libclntsh.so

      If there is no other Oracle software on your system that will be impacted, add Instant Client to the runtime link path. For example:

      sudo sh -c "echo /home/myuser/instantclient_19_14 > /etc/ld.so.conf.d/oic.conf"
      sudo ldconfig
      

      Alternatively set the library path in each shell that runs your application. For example:

      export LD_LIBRARY_PATH=/home/myuser/instantclient_19_14:$LD_LIBRARY_PATH
      Note

      The Linux Instant Client download files are available as .zip files or .rpm files. You can use either version.
  2. Install the relevant language driver for Oracle Database:
  3. If you have not already done so, enable TLS connections on your Autonomous Database instance.
  4. Run Your Application
    1. Update your application to connect using your database username, your password, and the Oracle Net connect name given in the unzipped tnsnames.ora file. For example, user, adb_user, password, and db2022adb_low as the connect string.
    2. Alternatively, change the connect string in tnsnames.ora to match the string used by your application.
    3. Run your application.

Allowing TLS connections to Autonomous Database does not disallow mutual TLS (mTLS) connections. Both Mutual TLS (mTLS) and TLS connections are valid when an Autonomous Database instance is configured to allow TLS connections. See Connect Node.js and other Scripting Languages (mTLS) for information on connecting using mutual TLS (mTLS) with a wallet.