Free, light-weight, and easily installed Oracle Database tools, libraries and SDKs

Free, light-weight, and easily installed Oracle Database tools, libraries and SDKs

Oracle Instant Client enables development and deployment of applications that connect to Oracle Database, either on-premise or in the Cloud. The Instant Client libraries provide the necessary network connectivity and advanced data features to make full use of Oracle Database. The libraries are used by the Oracle APIs of popular languages and environments including Python, Node.js, Go, PHP and Ruby, as well as providing access for Oracle Call Interface (OCI), Oracle C++ Call Interface (OCCI), JDBC OCI, ODBC and Pro*C applications. Tools included in Instant Client, such as SQL*Plus, SQL*Loader and Oracle Data Pump, provide quick and convenient data access.

Oracle Instant Client

What's New

Oracle Linux has Instant Client RPMs

Instant Client RPM packages for Oracle Linux can now be installed from yum.oracle.com for Oracle Linux 8 and Oracle Linux 7. Older releases are available for Oracle Linux 8, Oracle Linux 7 and Oracle Linux 6.

Note: The Oracle Instant Client 23ai RPMs will be uploaded in the yum repository in the coming weeks.

See Instant Client for Oracle Linux for installation instructions.

Instant Client is available for Docker

Dockerfiles are available on GitHub. Pre-built images are available from the GitHub Container Registry.

Instant Client Features

  • Free to download, deploy and distribute
  • Small footprint
  • ZIPs available for quick, one-step install
  • RPM Packages also available for Linux, and DMG Packages for macOS Intel x86
  • Same libraries as full Oracle Database or Oracle Client
  • Includes tools such as SQL*Plus, SQL*Loader and Data Pump
  • Widely used and tested

Recommended Oracle Instant Client

Oracle recommends using the latest 23ai Release Update of Oracle Instant Client or Oracle Database Client. This is a Long Term Release.

Instant Client applications are cloud ready

Deploy applications using Instant Client in the cloud, or connect to a cloud database.

Whether your applications are in the cloud or on-premise, you can install Instant Client and connect to cloud databases. Follow the normal installation process for your operating system. Some cloud-specific references are shown below.

Recent changes to Oracle Autonomous Database on Shared Exadata Infrastructure (ADB-S) connectivity

DigiCert retired the Organizational Unit (OU) field for all public TLS/SSL certificates to comply with industry standards as of August 2022. This means that public TLS/SSL certificates issued by DigiCert will no longer have an OU field. Refer to MOS note 2911553.1 for details.

To avoid disruption to applications connecting to Oracle Autonomous Database on Shared Exadata Infrastructure (ADB-S) during the server side certificate change, you must use hostname based matching of the server certificate.

The following versions of Oracle Instant Client automatically support hostname based matching:

Versions: 18.19 (or later), 19.2 (or later), 21 (base release or later), 23.4 (or later)

  • Oracle Call Interface (OCI), Oracle C++ Call Interface (OCCI) or ODBC applications must use one of the above client versions.
  • Oracle Database drivers based on Oracle Instant Client or Oracle Database Client (e.g ODPI-C, python-oracledb Thick mode, cx_Oracle, node-oracledb Thick mode, godror, PHP OCI8, PHP PDO_OCI, ruby-oci8, ROracle, and rust-oracle) must use the driver with a compatible client version from the list above.
An additional step is required if you have changed the ADB-S connection string.

ADB-S connection strings contain a hostname "...(HOST=xyz)..." which depends on the region. For example, in the Chicago region the hostname would be "adb.us-chicago-1.oraclecloud.com". If you have replaced the default hostname with an IP address or a custom hostname, then hostname based DN matching will fail. The solution is to add a new entry to your /etc/hosts file using the original ADB-S domain suffix. Your connection string should then use this new name. For example an entry "localtunnel.adb.us-chicago-1.oraclecloud.com" could be created and used.

Connecting to Multiple Oracle Autonomous Databases from one Process

To connect to multiple Oracle Autonomous Database instances from within one application process, use Oracle Instant Client 19.17, or later, or use Instant Client 23ai.

If you are using mTLS connections, put each wallet's cwallet.sso file in a unique directory. Concatenate the tnsnames.ora file entries from all wallets into a single tnsnames.ora file. Make a copy of one sqlnet.ora file and remove the WALLET_LOCATION line. Alter each connection descriptor in your new tnsnames.ora file and add a WALLET_LOCATION clause set to the directory containing the cwallet.sso file for the relevant database. See the Database Net Services Reference for an example. Configure your application to use the new tnsnames.ora and sqlnet.ora files, for example by placing them both in the "network/admin" sub-directory of your Instant Client installation. Your application can now use the appropriate network alias from the tnsnames.ora file to connect to each database service.

Get Oracle Instant Client
 

Instant Client Packages

Instant Client Package Description References
Basic All files required to run OCI, OCCI, and JDBC OCI applications for Oracle Database OCI
OCCI
JDBC OCI
Basic Light Smaller version of the Basic package, with only English error messages and Unicode, ASCII, and Western European character set support OCI
OCCI
JDBC OCI
SDK Additional header files and an example makefile for developing OCI and OCCI applications  
SQL*Plus Additional package providing the SQL*Plus command-line tool for executing SQL and PL/SQL statements and scripts SQL*Plus
Tools Additional tools including Data Pump, SQL*Loader and Workload Replay Client Data Pump and SQL*Loader
WRC
ODBC Additional libraries providing ODBC ODBC
Precompilers Additional tools and libraries providing the Pro*C and Pro*COBOL precompilers Pro*C
Pro*COBOL
JDBC OCI Supplement Additional libraries to support Internationalization JDBC OCI