> ## Documentation Index
> Fetch the complete documentation index at: https://basedash.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Oracle

> Connect your Oracle database to Basedash

Connect your Oracle database to Basedash to visualize and analyze your enterprise data. Basedash connects directly and queries your data in place.

## Connection URI (recommended)

The easiest way to connect is by using a connection string (URI). In Basedash, press <kbd>Cmd/Ctrl</kbd> <kbd>K</kbd> and paste your connection string to start the connection flow immediately.

Example:

```
oracle://[USERNAME]:[PASSWORD]@[HOST]:1521/[SERVICE_NAME]
```

## Manual connection details

If you prefer to enter credentials manually, use the following details:

1. Open the **Data** page and click **Add data source**
2. Select **Oracle**
3. Enter your connection details:
   * Service name (e.g., `orclpdb1`)
   * Username
   * Password
   * Host (e.g., `your-db.host.com`). You can also paste a full connect descriptor, such as `(DESCRIPTION=(ADDRESS=...)(CONNECT_DATA=...))`
   * Port (default: 1521)
   * SSL (turn on to connect over TCPS)
4. Click **Connect**. Basedash checks the connection, then opens the new data source and starts syncing its schema.

![The Oracle connection form in Basedash with service name, username, password, host, and port 1521 filled in, SSL turned on, and Connect using SSH turned off](https://mintcdn.com/basedash/1uWWcBDZtjMM1cxJ/images/data-sources/databases/oracle/connection-form.webp?fit=max\&auto=format\&n=1uWWcBDZtjMM1cxJ\&q=85\&s=e12ec436432b76d507d4e0d9e62eed36)

### SSH tunnel

For enhanced security when your database is in a private network:

1. Follow the manual connection steps above, but don't click **Connect** yet
2. Turn on **Connect using SSH**
3. Add our IP (`24.199.77.73`) to your allowlist
4. Provide SSH connection details:
   * SSH host and SSH port
   * SSH username
   * Set **Authentication method** to **Private key** (recommended) and paste your SSH private key, plus its passphrase if it has one. Password authentication is also supported.
5. Click **Connect**

## Required permissions

Create a dedicated user for Basedash with read access to the schemas you want to analyze:

```sql theme={"dark"}
CREATE USER basedash IDENTIFIED BY "<strong-password>";
GRANT CREATE SESSION TO basedash;
GRANT SELECT ON app_schema.orders TO basedash;
```

Repeat the `SELECT` grant for each table or view Basedash should see, or use a role that bundles them.

## Best practices

* Use a read-only user for Basedash
* Enable SSL (TCPS) for secure connections
* Consider using an SSH tunnel for databases in private networks
* Regularly rotate database credentials

## Troubleshooting

For what each connection error means and how to fix it, see [Connection settings](/docs/data-sources/connection-settings.md#troubleshooting).

* Use the service name, not the SID, in the database name field
* Verify firewall and listener settings allow connections from the Basedash IP (`24.199.77.73`)
* If SSL fails, confirm your listener accepts TCPS connections on the port you entered
* Confirm the user has `CREATE SESSION` and `SELECT` on the tables you expect to see

## Next steps: Add custom context

You can add custom context to help the AI better understand your data structure and business logic. Consider adding context at the database or schema level if you notice the AI struggling to locate or understand specific data.

### When to add context

* **Unclear naming conventions**: If table or column names don't clearly indicate their purpose
* **Business-specific terminology**: When your data uses internal abbreviations or custom terms
* **Large enterprise schemas**: When the AI needs help finding the right tables among many

For detailed guidance, see our [custom context documentation](/docs/features/ai-context.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.