Skip to main content
Version: Next

Oracle Catalog Connector

Connect to an Oracle database as a catalog provider for federated SQL query. The Oracle Catalog Connector automatically discovers schemas and tables within an Oracle database and makes them available for querying in Spice. Supports on-premises instances, Oracle Cloud User-Managed Databases, and Oracle Cloud Autonomous Databases (ADB).

For connecting to individual Oracle tables, see the Oracle Data Connector documentation.

Configuration

catalogs:
- from: oracle
name: my_oracle
include:
- 'HR.*' # include all tables from the HR schema
params:
oracle_host: localhost
oracle_port: '1521'
oracle_username: ${secrets:ORACLE_USER}
oracle_password: ${secrets:ORACLE_PASS}
oracle_service_name: XEPDB1

from

The from field specifies the catalog provider. For Oracle, use oracle.

name

The name field specifies the name of the catalog in Spice. Tables from the Oracle database will be available under this catalog name. The schema hierarchy of the Oracle database is preserved in Spice.

include

Use the include field to specify which tables to include from the catalog. The include field supports glob patterns to match multiple tables. For example, *.my_table_name would include all tables with the name my_table_name from any schema. Multiple include patterns are OR'ed together.

params

Connection can be configured using a connection string or individual parameters. In both cases, oracle_username and oracle_password are required.

Connection string

Parameter NameDescription
oracle_connection_stringAn Oracle connection string. E.g. //myhost:1521/ORCLPDB1.
oracle_usernameThe Oracle username for authentication.
oracle_passwordThe Oracle password for authentication.

Individual parameters

Parameter NameDescription
oracle_hostThe Oracle host address.
oracle_portThe Oracle port number. Default: 1521.
oracle_service_nameThe Oracle service name. Default: XEPDB1.
oracle_usernameThe Oracle username for authentication.
oracle_passwordThe Oracle password for authentication.

Wallet parameters (for Oracle Cloud ADB)

Parameter NameDescription
oracle_walletPath to the Oracle wallet directory for mTLS connections.
oracle_wallet_sso_certPath to the Oracle wallet certificate file, or base64-encoded wallet certificate content.

Authentication

Basic authentication

catalogs:
- from: oracle
name: my_oracle
params:
oracle_host: localhost
oracle_port: '1521'
oracle_username: ${secrets:ORACLE_USER}
oracle_password: ${secrets:ORACLE_PASS}
oracle_service_name: ORCLPDB1

Connection string

catalogs:
- from: oracle
name: my_oracle
params:
oracle_connection_string: //myhost:1521/ORCLPDB1
oracle_username: ${secrets:ORACLE_USER}
oracle_password: ${secrets:ORACLE_PASS}

Oracle Cloud Autonomous Database (mTLS)

catalogs:
- from: oracle
name: my_oracle
params:
oracle_connection_string: "(description=(retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-ashburn-1.oraclecloud.com))(connect_data=(service_name=abc_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))"
oracle_username: ${secrets:ORACLE_USER}
oracle_password: ${secrets:ORACLE_PASS}
oracle_wallet: /path/to/wallet

Secrets

Spice integrates with multiple secret stores to help manage sensitive data securely. For detailed information on supported secret stores, refer to the secret stores documentation. Additionally, learn how to use referenced secrets in component parameters by visiting the using referenced secrets guide.