Add Oracle Instant Client

This article explains how to upload Oracle Instant Client to BucketFS.

Exasol supports using the Oracle Instant Client to connect to an Oracle database. When using the instant client, use the IMPORT FROM ORA syntax. For more information, see IMPORT.

By default, the database is configured to use the following path for the Oracle Instant Client:

/buckets/bfsdefault/default/drivers/oracle/

Prerequisites

  • Download Oracle Instant Client 23.5.0.24.07 (instantclient-basic-linux.x64-23.5.0.24.07.zip) from the Oracle website.

    Version 23.5.0.24.07 is the only supported version of Oracle Instant Client in Exasol.

  • The default bucket is available on port 2581 by default. Ensure that the security group contains an inbound rule with this port. For more information see Authorize inbound traffic to your linux instances.

  • Change the write password of the default bucket. For more information, see Change Bucket Password.

Procedure

The following examples use curl on a Linux terminal. You can also use other interfaces and languages to execute the curl commands.

Placeholder values in the examples are styled as Bash variables, for example: $NODE_IP. Replace these placeholders with your own values.

Upload the zip file to the specified bucket path. For more information, see Manage Buckets and Files in BucketFS.

You must use the IP address of one of the database nodes, not the address of the database access node.

For example:

curl -v --insecure -X PUT -T instantclient-basic-linux.x64-12.1.0.2.0.zip https://w:$WRITE_PW@$DATABASE_NODE_IP:2581/default/drivers/oracle/instantclient-basic-linux.x64-12.1.0.2.0.zip

The option --insecure or -k tells curl to bypass the TLS certificate check. This option allows you to connect to a HTTPS server that does not have a valid certificate. Only use this option if certificate verification is not possible and you trust the server.

Verification

To verify that the Oracle Instant Client is installed, perform an IMPORT statement using the IMPORT FROM ORA syntax. For example:

CREATE OR REPLACE CONNECTION OCI_ORACLE
    TO '192.168.99.103:1521/xe'
    USER 'system'
    IDENTIFIED BY 'oracle';
SELECT * FROM (
    IMPORT FROM ORA at OCI_ORACLE
    STATEMENT 'select ''Connection works'' from dual'
);

See also