This is the implementation of the Oracle data handler for MindsDB.

Oracle Database is a multi-model database management system produced and marketed by Oracle Corporation.


Before proceeding, ensure the following prerequisites are met:

  1. Install MindsDB locally via Docker or Docker Desktop.
  2. To connect Oracle to MindsDB, install the required dependencies following this instruction.
  3. Install or ensure access to Oracle.


This handler is implemented using the oracledb library. Please install it with the below command before using this handler.

pip install oracledb

The required arguments to establish a connection are as follows:

  • host is the host name, IP address, or URL.
  • port is the port used to make TCP/IP connection.
  • sid is the unique identifier of the database instance.
  • user is the database user.
  • password is the database password.

The optional arguments are as follows:

  • disable_oob defines whether to disable out-of-bank breaks.
  • auth_mode defines the database privilege mode: SYSDBA, SYSOPER, or others.


In order to make use of this handler and connect to the Oracle database in MindsDB, the following syntax can be used:

CREATE DATABASE oracle_datasource
  ENGINE = 'oracle',
    "host": "",
    "port": 1521,
    "sid": "ORCL",
    "user": "sys",
    "password": "password",
    "disable_oob": true,
    "auth_mode": "SYSDBA"

The connection accepts either sid or service_name arguments to target the right database instance.

You can use this established connection to query your table as follows:

FROM oracle_db.my_table;