Using On-Premise Scripting Languages with Oracle Database Exadata Express Cloud Service

Scripting Languages and Oracle Cloud

Oracle Database drivers for scripting languages including Node.js, Python, R, PHP and Ruby can connect to Oracle Database Exadata Express Cloud Service using Instant Client 12.2. Network security is enforced by using an Oracle Wallet, which can be downloaded from the database service.

1. Download and Install Instant Client 12.2

  • Obtain the Instant Client 12.2 'basic' package for your desired architecture by downloading it from the Instant Client pages. The smaller 'basiclite' package may be used instead of 'basic'. The smaller package contains only English error messages and has support for Unicode, ASCII, and Western European character sets.

    Alternatively, use these links for Oracle Instant Client 12.1 packages suitable for use with Exadata Express Cloud Service.

    For other platforms, download using links from the Oracle Instant Client page. Review Support Note 2183770.1 for any required updates.

  • If building a language API or driver from source code, the Instant Client SDK will commonly also be needed.

  • Unzip the 'basic' or 'basiclite' package, for example to C:\instantclient_12_2 or /home/myuser/instantclient_12_2. If the SDK was downloaded it should be unzipped to the same directory.

  • On Windows, add C:\instantclient_12_2 to the PATH variable in the "System variables" section of the Environment Variables pane. On Windows 8 this can be accessed by navigating to Control Panel>System>Advanced System Settings>Environment Variables. If you have multiple versions of Oracle libraries installed, make sure the new directory occurs first in the path.

  • On Windows, install a Visual Studio Redistributable from Microsoft. For Instant Client 12.2, install the VS 2013 Redistributable. For Instant Client 12.1, install the VS 2010 Redistributable. Use a 64-bit or 32-bit Redistributable to match your Instant Client architecture.

  • On non-Windows platforms, create a symbolic link like:

        cd /home/myuser/instantclient_12_2
        ln -s libclntsh.so.12.1 libclntsh.so

    Applications and tools that use the OCCI C++ API also need the symbolic link:

        ln -s libocci.so.12.1 libocci.so

    Set the library path:

        export LD_LIBRARY_PATH=/home/myuser/instantclient_12_2:$LD_LIBRARY_PATH

    Instead of setting LD_LIBRARY_PATH, you could create an ldconfig configuration file if there is no other Oracle software that will be impacted:

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

    The Linux 'basic' or 'basiclite' RPMs can also be used. With these, it is not necessary to create a symbolic link.

2. Enable Oracle Network Connectivity and Download the Client Wallet

  • In your web browser, navigate to the Exadata Express service console.

  • If Client Access is not currently enabled, click Enable Client Access on the console.

  • Click Download Client Credentials on the console to download client_credentials.zip containing your security credentials and network configuration files that will allow client access to your cloud database. Save this zip file to a secure location.

  • Make network and network/admin subdirectories in the Instant Client directory and unzip the client credentials there, for example so the files are in the C:\instantclient_12_2\network\admin, /home/myuser/instantclient_12_2/network/admin or /usr/lib/oracle/12.2/client64/lib/network/admin directory.

    Secure the files so that only users who are authorized to connect to the Exadata Express service have access to them. By default, Oracle recommends granting permissions only to the file owner.

  • Alternatively, put the unzipped wallet files in a secure directory and set the TNS_ADMIN environment variable to that directory name.

3. Install Database Drivers

Follow the language-specific instructions to install database drivers using the updated Instant Client.

4. Run Your Application

  • Update your application connection code.

    Use the Oracle network service name given in the unzipped tnsnames.ora file. For example, use dbaccess as the connect string. Alternatively, change the connect string in tnsnames.ora to match the string used by your application.

    Use your Oracle Database Exadata Express database username and password. If you haven't created a new user, see Creating Database Schemas, or test with the administrator username PDB_ADMIN and password. Note the password is not the wallet password. See Managing the Administrator User (PDB_ADMIN) for information about the PDB_ADMIN password.

  • Review Known Issues for Oracle Database Exadata Express Cloud Service.

  • Run your application.

Exadata Express Resources

Developer Resources