> For the complete documentation index, see [llms.txt](https://docs.ovaledge.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ovaledge.com/connectors/connector-repositories/rdbms/oracle.md).

# Oracle

This article outlines the integration with Oracle, enabling streamlined metadata management through features such as crawling, profiling, querying, Data Quality, data preview, and lineage building (both automatic and manual).

The connector establishes connectivity to Oracle databases using the Oracle JDBC driver. It supports Oracle Database 21c and is expected to be compatible with other supported Oracle versions. The connector authenticates using a service account with the required database permissions to access Oracle metadata objects through JDBC, enabling metadata discovery, profiling, querying, and lineage extraction.

<div align="left"><figure><img src="https://1813356899-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FhTnkoJQml0pok9awFDhx%2Fuploads%2FnXjB3ccfw8qrc8HMiC6O%2Fimage.png?alt=media&amp;token=52b8e0a8-12f9-483d-9c6c-dfeb982050c5" alt=""><figcaption></figcaption></figure></div>

## Overview

### Connector Details

| Connector Category                                                               | RDBMS                |
| -------------------------------------------------------------------------------- | -------------------- |
| OvalEdge Release Supported                                                       | Release7.x and later |
| <p>Connectivity</p><p>\[How the connection is established with RDBMS System]</p> | JDBC driver          |
| Verified Oracle Version                                                          | 21c                  |

{% hint style="info" %}
The Oracle connector has been validated with the mentioned "Verified Oracle Versions" and is expected to be compatible with other supported Oracle versions. If there are any issues with validation or metadata crawling, please submit a support ticket for investigation and feedback.
{% endhint %}

### Connector Features

<table data-search="false"><thead><tr><th>Feature</th><th align="center">Availability</th></tr></thead><tbody><tr><td>Crawling</td><td align="center">✅</td></tr><tr><td>Delta Crawling</td><td align="center">❌</td></tr><tr><td>Profiling</td><td align="center">✅</td></tr><tr><td>Query Sheet</td><td align="center">✅</td></tr><tr><td>Data Preview</td><td align="center">✅</td></tr><tr><td>Auto Lineage</td><td align="center">✅<br>To learn more, click <a href="https://docs.ovaledge.com/connectors/connector-repositories/rdbms/oracle/oracle-lineage">here</a>.</td></tr><tr><td>Manual Lineage</td><td align="center">✅</td></tr><tr><td>Secure Authentication via Credential Manager</td><td align="center">✅</td></tr><tr><td>Data Quality</td><td align="center">✅</td></tr><tr><td>DAM (Data Access Management)</td><td align="center">❌</td></tr><tr><td>Bridge</td><td align="center">✅</td></tr></tbody></table>

{% hint style="info" %}
The Oracle connector supports crawling of index names and their related column mappings.
{% endhint %}

### Metadata Mapping

The following objects are crawled from Oracle and mapped to the corresponding UI assets.

<table data-search="false"><thead><tr><th width="159.8182373046875">Oracle Object</th><th width="189.9090576171875">Oracle Attribute</th><th width="189">OvalEdge Attribute</th><th width="174.3636474609375">OvalEdge Category</th><th width="171.6363525390625">OvalEdge Type</th></tr></thead><tbody><tr><td>Schema</td><td>Schema name</td><td>Schema</td><td>Databases</td><td>Schema</td></tr><tr><td>Schema</td><td>Schema comment</td><td>Source Description</td><td>Databases</td><td>Schema</td></tr><tr><td>Table</td><td>tablename</td><td>Table</td><td>Tables</td><td>table</td></tr><tr><td>Table</td><td>table_type</td><td>Type</td><td>Tables</td><td>table</td></tr><tr><td>Table</td><td>tablecomment</td><td>Source Description</td><td>Descriptions</td><td>Source Description</td></tr><tr><td>Columns</td><td>COLUMN_NAME</td><td>Column</td><td>Table Columns</td><td>-</td></tr><tr><td>Columns</td><td>DATA_TYPE</td><td>Column Type</td><td>Table Columns</td><td>-</td></tr><tr><td>Columns</td><td>COMMENTS</td><td>Source Description</td><td>Table Columns</td><td>-</td></tr><tr><td>Columns</td><td>DATA_LENGTH</td><td>Data Type Size</td><td>Table Columns</td><td>-</td></tr><tr><td>Columns</td><td>Ordinal Position</td><td>Column Position</td><td>Table Columns</td><td>-</td></tr><tr><td>Columns</td><td>Column Name</td><td>Column</td><td>Table Columns</td><td>-</td></tr><tr><td>View</td><td>View Name</td><td>View</td><td>Tables</td><td>View</td></tr><tr><td>View</td><td>text</td><td>View Query</td><td>Views</td><td>View</td></tr><tr><td>Procedures</td><td>name</td><td>Name</td><td>Procedures</td><td>-</td></tr><tr><td>Package</td><td>name</td><td>Code Name</td><td>Codes</td><td>-</td></tr><tr><td>Package Body</td><td>name</td><td>Code Name</td><td>Codes</td><td>-</td></tr><tr><td>Triggers</td><td>trigger_name</td><td>Name</td><td>Triggers</td><td>-</td></tr><tr><td>Functions</td><td>name</td><td>Name</td><td>Functions</td><td>-</td></tr><tr><td>Functions</td><td>Text</td><td>Function Query</td><td>Functions</td><td>-</td></tr><tr><td>Synonyms</td><td>SYNONYM_NAME</td><td>Synonym</td><td>Synonyms</td><td>-</td></tr><tr><td>Synonyms</td><td>synonym_definition</td><td>Synonym Definition</td><td>Synonyms</td><td>-</td></tr><tr><td>Indexes</td><td>Index name</td><td>Index</td><td>Indexes</td><td>Index</td></tr><tr><td>Indexes</td><td>If unique</td><td>Yes /No</td><td>Indexes</td><td>Index</td></tr><tr><td>Triggers</td><td>Trigger Name</td><td>Name</td><td>Triggers</td><td>-</td></tr><tr><td>Triggers</td><td>Trigger Definition</td><td>Trigger Data</td><td>Triggers</td><td>-</td></tr><tr><td>Triggers</td><td>Trigger Type</td><td>Type</td><td>Triggers</td><td>-</td></tr></tbody></table>

## Set up a Connection

### Prerequisites

The following are the prerequisites to establish a connection:

**External Supporting Files**

{% hint style="info" %}
The required external JAR files are included as part of the **OvalEdge installation artifacts**. For driver installation and configuration details, refer to the [**Connector Drivers Setup Guide**](https://docs.ovaledge.com/connectors/additional-requirements/connector-drivers-setup-guide). Please contact the **OvalEdge Team** for assistance related to the driver files and configuration setup.
{% endhint %}

### **Whitelisting Ports**

Make sure that inbound port “1521” is whitelisted to enable successful connectivity with the Oracle database.

{% hint style="warning" %}
The default port number for the Oracle data source is 1521. If a different port is used, ensure that the updated port number is specified during connection setup, the port is whitelisted, and communication between the system and the Oracle data source is properly established.
{% endhint %}

### **Service Account User Permissions**

{% hint style="warning" %}
It is recommended to use a dedicated service account to establish the connection to the data source, configured with the following minimum set of permissions.
{% endhint %}

{% hint style="info" %}
👨‍💻 **Who can provide these permissions?** These permissions are typically granted by the Oracle administrator, as users may not have the required access to assign them independently.
{% endhint %}

<table data-full-width="false" data-search="false"><thead><tr><th>Objects</th><th>System Tables / Objects</th><th>Access Permission</th></tr></thead><tbody><tr><td>Schemas</td><td>sys.dba_users</td><td>Select</td></tr><tr><td>Schemas</td><td>all_users</td><td>Select</td></tr><tr><td>Tables</td><td>all_tab_comments</td><td>Select</td></tr><tr><td>Tables</td><td>SYS.ALL_MVIEWS</td><td>Select</td></tr><tr><td>Tables</td><td>dba_tab_comments</td><td>Select</td></tr><tr><td>Table Columns</td><td>ALL_TAB_COLUMNS, ALL_COL_COMMENTS</td><td>Select</td></tr><tr><td>Table Columns</td><td>all_constraints, all_cons_columns</td><td>Select</td></tr><tr><td>Views</td><td>ALL_VIEWS</td><td>Select</td></tr><tr><td>Functions</td><td>DBA_SOURCE, ALL_SOURCE</td><td>Select</td></tr><tr><td>Stored Procedures</td><td>DBA_SOURCE, ALL_SOURCE</td><td>Select</td></tr><tr><td>Synonyms</td><td>all_synonyms</td><td>Select</td></tr><tr><td>Indexes</td><td>ALL_INDEXES, ALL_IND_COLUMNS</td><td>Select</td></tr><tr><td>Relationships</td><td>all_cons_columns, all_constraints</td><td>Select</td></tr></tbody></table>

{% hint style="info" %}
The Oracle connector supports configurable visibility handling for hidden and virtual columns during metadata crawling. Depending on the connector configuration and database permissions, these columns may be included or excluded from metadata extraction.
{% endhint %}

### Connection Configuration Steps

{% hint style="warning" %}
*Users are required to have the Connector Creator role in order to configure a new connection.*
{% endhint %}

1. Log into OvalEdge, go to **Administration** > **Connectors**, click **+ (New Connector)**, search for **Oracle**, and complete the required parameters.

{% hint style="info" %}
Fields marked with an asterisk (\*) are mandatory for establishing a connection.
{% endhint %}

<table><thead><tr><th width="220.25">Field Name</th><th>Description</th></tr></thead><tbody><tr><td>Connector Type</td><td>By default, "Oracle" is displayed as the selected connector type.</td></tr><tr><td>Credential Manager*</td><td><p>Select the desired credentials manager from the drop-down list. Relevant parameters will be displayed based on your selection.</p><p>Supported Credential Managers:</p><ul><li>OE Credential Manager</li><li>AWS Secrets Manager</li><li>HashiCorp Vault</li><li>Azure Key Vault</li></ul><p>For more details, click <a href="https://docs.ovaledge.com/connectors/additional-requirements/credential-manager-configuration">here</a>.</p></td></tr><tr><td>License Add Ons</td><td><ul><li>Select the checkbox for Auto Lineage Add-On to build data lineage automatically.</li><li>Select the checkbox for Data Quality Add-On to identify data quality issues using data quality rules and anomaly detection.</li></ul><p>For more details, click <a href="https://docs.ovaledge.com/connectors/introduction-to-connectors/setup-and-connectivity/license-types-and-add-ons">here</a>.</p></td></tr><tr><td>Connector Name*</td><td>Enter a unique name for the Oracle connection.</td></tr><tr><td>Connector Environment</td><td>Select the environment (Example: PROD, STG) configured for the connector.<br>For more details, click <a href="https://docs.ovaledge.com/connectors/introduction-to-connectors/setup-and-connectivity/prerequisites#connector-environment">here</a>.</td></tr><tr><td>Connector Description</td><td>Enter a brief description of the connector.</td></tr><tr><td>Server*</td><td>Enter the Oracle database server name or IP address (Example: xxxx-xxxxxxx.xxxx4ijtzasl.xx-south-1.rds.xxxxxx.com or 1xx.xxx.1.xx).</td></tr><tr><td>Port*</td><td>By default, the port number for Oracle, 1521, is auto-populated. If required, the port number can be modified as per custom port number that is configured for the Oracle database.</td></tr><tr><td>Database*</td><td>Enter the database name to which the service account user has access within the Oracle database.</td></tr><tr><td>Database Type</td><td><p>Select SID or Service Name from the Database type drop-down.</p><p>An SID uniquely identifies a specific database within an environment, whereas a Service Name can represent one or more SIDs.</p></td></tr><tr><td>Driver*</td><td>By default, the Oracle driver details are auto-populated.</td></tr><tr><td>Username*</td><td>Enter the service account username configured to access the Oracle database (example: "oesauser").</td></tr><tr><td>Password*</td><td>Enter the password associated with the service account user.</td></tr><tr><td>Connection String</td><td><p>Configure the connection string for the Oracle database:</p><ul><li><strong>Automatic mode</strong>: The system generates a connection string based on the provided credentials.</li><li><strong>Manual mode:</strong> Enter a valid connection string manually.</li></ul><p>Replace placeholders with actual database details.</p><p>{<strong>sid</strong>} refers to the database name.</p></td></tr><tr><td>Plugin Server</td><td>Enter the server’s name when running as a plugin server.</td></tr><tr><td>Plugin Port</td><td>Enter the port number on which the plugin is running.</td></tr></tbody></table>

**Default Governance Roles**

<table data-header-hidden><thead><tr><th width="219"></th><th></th></tr></thead><tbody><tr><td>Default Governance Roles*</td><td>Select the appropriate users or teams for each governance role from the drop-down list. All users configured in the security settings are available for selection.</td></tr></tbody></table>

**Admin Roles**

<table data-header-hidden><thead><tr><th width="220.25"></th><th></th></tr></thead><tbody><tr><td>Admin Roles*</td><td>Select one or more users from the drop-down list for Integration Admin and Security &#x26; Governance Admin. All users configured in the security settings are available for selection.</td></tr></tbody></table>

**No. of Archive Objects**

<table data-header-hidden><thead><tr><th width="221.5"></th><th></th></tr></thead><tbody><tr><td>No Of Archive Objects*</td><td><p>This shows the number of recent metadata changes to a dataset at the source. By default, it is off. To enable it, toggle the Archive button and specify the number of objects to archive.</p><p>Example: Setting it to 4 retrieves the last four changes, displayed in the 'Version' column of the 'Metadata Changes' module.</p></td></tr></tbody></table>

**Bridge**

<table data-header-hidden><thead><tr><th width="220.25"></th><th></th></tr></thead><tbody><tr><td>Select Bridge*</td><td><p>If applicable, select the bridge from the drop-down list.</p><p>The drop-down list displays all active bridges that have been configured. These bridges facilitate communication between data sources and the system without requiring changes to firewall rules.</p></td></tr></tbody></table>

2. After entering all connection details, the following actions can be performed:
   1. Click **Validate** to verify the connection.
   2. Click **Save** to store the connection for future use.
   3. Click **Save & Configure** to apply additional settings before saving.
3. The saved connection will appear on the Connectors home page.

## Manage Connector Operations

### Crawl/Profile

{% hint style="warning" %}
*To perform crawl and profile operations, users must be assigned the Integration Admin role.*
{% endhint %}

The **Crawl/Profile** button allows users to select one or more schemas for crawling and profiling.

1. Navigate to the **Connectors** page and click **Crawl/Profile**.
2. Select the schemas to crawl.
3. The **Crawl** option is selected by default. To perform both operations, select the **Crawl & Profile** radio button.
4. Click **Run** to collect metadata from the connected source and load it into the **Data Catalog**.
5. After a successful crawl, the information appears in the **Data Catalog > Databases** tab.

The **Schedule** checkbox allows automated crawling and profiling at defined intervals, from a minute to a year.

1. Click the Schedule checkbox to enable the **Select Period** drop-down.
2. Select a time period for the operation from the drop-down menu.
3. Click **Schedule** to initiate metadata collection from the connected source.
4. The system will automatically execute the selected operation (**Crawl** or **Crawl & Profile**) at the scheduled time.

### Other Operations

The Connectors page provides a centralized view of all configured connectors, along with their health status.

#### **Managing connectors includes:**

* **Connector Health:** Displays the current status of each connector using a **green** icon for active connections and a **red** icon for inactive connections, helping to monitor the connectivity with data sources.
* **Viewing:** Click the **Eye** icon next to the connector name to view connector details, including databases, tables, columns, and codes.

#### **Nine Dots Menu Options:**

To view, edit, validate, build lineage, configure, or delete connectors, click on the **Nine Dots** menu.

* **Edit Connector:** Update and revalidate the data source.
* **Validate Connector:** Check the connection's integrity.
* **Settings:** Modify connector settings.
  * **Crawler:** Configure data extraction.
  * **Profiler:** Customize data profiling rules and methods.
  * **Query Policies:** Define query execution rules based on roles.
  * **Access Instructions:** Add notes on how data can be accessed.
  * **Business Glossary Settings:** Manage term associations at the connector level.
  * **Anomaly Detection Settings:** Configure anomaly detection preferences at the connector level.
  * **Connection Pooling**: Configure database connection pool parameters to optimize database connectivity and resource utilization. For more details, click [here](https://docs.ovaledge.com/connectors/introduction-to-connectors/setup-and-connectivity/connector-settings#connection-pooling).
  * **Others:** Configure notification recipients for metadata changes.
* **Build Lineage:** Automatically build data lineage using source code parsing.
* **Delete Connector:** Remove a connector with confirmation.

For more details on connector settings, click [here](https://docs.ovaledge.com/connectors/introduction-to-connectors/setup-and-connectivity/connector-settings).

## **Profiling Limitations**

The following data types are not supported for profiling:

* CLOB
* NCLOB
* XMLTYPE
* LONG
* BLOB
* LOB
* IMG
* BFILE
* BINARY

## Troubleshooting

If incorrect parameters are entered, error messages may appear. Ensure all inputs are accurate to resolve these issues. If issues persist, contact the assigned support team.

{% tabs %}
{% tab title="Connectivity" %}

<table data-search="true"><thead><tr><th width="85">S. No</th><th width="205">Error Message</th><th>Error Description &#x26; Resolution</th></tr></thead><tbody><tr><td>1</td><td>Oracle JDBC Driver not found / No suitable driver</td><td><p>The Oracle JDBC driver is unavailable in the required location, preventing the connector from establishing a connection.<br><strong>Resolution:</strong></p><ul><li>Place the supported Oracle JDBC driver in the appropriate third-party JAR directory (or Bridge Client library folder for Bridge deployments).</li><li>Restart the application or Bridge after adding the driver.</li></ul></td></tr><tr><td>2</td><td>Failed to connect to Oracle server</td><td><p>The connector cannot establish communication with the Oracle database because the server, port, or database connection information is incorrect or inaccessible.</p><p><strong>Resolution:</strong></p><ul><li>Verify the Server value (IP address for on-premises or domain name for cloud deployments).</li><li>Confirm the configured port number.- Ensure the Oracle listener is running.</li><li>Verify network connectivity between the application server (or Bridge) and the Oracle database server.</li></ul></td></tr><tr><td>3</td><td>Connection timeout while connecting to Oracle</td><td><p>The connector could not establish a database connection within the configured timeout period due to network delays or unreachable database services.</p><p><strong>Resolution:</strong></p><ul><li>Verify network connectivity.</li><li>Ensure firewall rules allow communication through the configured Oracle port.</li><li>Confirm the Oracle database is available and accepting connections.</li><li>Retry the validation after connectivity is restored.</li></ul></td></tr><tr><td>4</td><td>Error while validating Oracle Connection: Failed to obtain JDBC Connection; nested exception is xxx.sql.SQLxxxxx: ORA-xxxxx: invalid username/password; logon denied</td><td><p>Either the username or the password might be wrong.</p><p><strong>Resolution:</strong></p><ul><li>The username or password entered in the setup form is incorrect.</li><li>The authorizing user has the necessary permissions to establish a connection with the database.</li></ul></td></tr><tr><td>5</td><td>Invalid SID or Service Name</td><td><p>The connector could not locate the specified Oracle database because the selected database connection mode does not match the configured database information.</p><p><strong>Resolution:</strong></p><ul><li>Select the correct database connection type (SID or Service Name).</li><li>Verify the configured SID or Service Name with the Oracle administrator.</li><li>Ensure the selected database identifier exists and is accessible to the configured user.</li></ul></td></tr><tr><td>6</td><td>Error while validating Oracle Connection: Failed to obtain JDBC Connection; nested exception is xxxx.sql.SQLxxxx: Listener refused the connection with the following error: ORA-xxxxx, TNS:listener does not currently know of SID given in connect descriptor.</td><td><p>The database name provided is invalid.</p><p><strong>Resolution:</strong></p><ul><li>Verify that the correct <strong>Database Type</strong> is selected during connector configuration.</li><li>If the environment uses an SID, select <strong>SID</strong> and provide the matching database identifier.</li><li>If the environment uses a Service Name, select <strong>Service Name</strong> and provide the corresponding value.</li><li>Ensure that the Database field and connection details match the selected Database Type configuration.</li></ul></td></tr><tr><td>7</td><td>Error while validating Oracle Connection: Failed to obtain JDBC Connection; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed.</td><td><p>The Oracle TCPS connection failed during SSL handshake validation because the required SSL certificate was not available in the Java truststore.</p><p><strong>Resolution:</strong></p><ul><li>Import the required Oracle or Amazon RDS SSL certificate into the Java truststore used by the Bridge server.</li><li>Verify that the truststore configuration is correctly applied to the Java runtime.- Restart the Bridge service after updating the certificate configuration.</li><li>Validate the Oracle connection again after completing the certificate import.</li></ul></td></tr><tr><td>8</td><td>Unable to discover all databases using Service Name or SID</td><td><p>The connector cannot identify the available Oracle databases because metadata discovery queries require additional database permissions.</p><p><strong>Resolution:</strong></p><ul><li>Ensure the Oracle user has the permissions required for database discovery.</li><li>Verify that the database administrator has granted access for both SID-based and Service Name-based discovery where applicable.</li><li>Retry validation after permissions are updated.</li></ul></td></tr></tbody></table>
{% endtab %}

{% tab title="Crawling" %}

<table><thead><tr><th width="86">S. No</th><th width="203">Error Message</th><th>Error Description &#x26; Resolution</th></tr></thead><tbody><tr><td>1</td><td>Failed to retrieve schemas</td><td><p>The connector cannot enumerate Oracle schemas during crawling because the configured user lacks sufficient privileges or metadata access.</p><p><strong>Resolution:</strong></p><ul><li>Verify that the configured Oracle user has permission to access the required schemas.</li><li>Confirm that metadata access privileges have been granted.</li><li>Retry crawling after permissions are updated.</li></ul></td></tr><tr><td>2</td><td>Crawl completed but expected objects are missing</td><td><p>Crawling completed successfully, but some schemas, tables, procedures, indexes, or other metadata objects are not visible because crawler options or inclusion rules exclude them.</p><p><strong>Resolution:</strong></p><ul><li>Review crawler settings.</li><li>Enable crawling for Procedures, Functions, Triggers, View Source Code, Indexes, Synonyms, or Relationships if required.</li><li>Verify Include and Exclude rules for schemas, tables, columns, procedures, and functions.</li></ul></td></tr><tr><td>3</td><td>Virtual or Hidden columns are not displayed</td><td><p>Oracle Virtual Columns and Hidden Columns are disabled in the connector configuration, preventing them from being crawled</p><p><strong>Resolution:</strong></p><ul><li>In the Add/Edit Connection popup, enable the Virtual Columns option to crawl calculated Oracle virtual columns.</li><li>In the Add/Edit Connection popup, enable Hidden Columns to retrieve Oracle system-generated hidden columns.</li><li>Run crawling again after updating the configuration.</li></ul></td></tr><tr><td>4</td><td>Connection validation succeeds but crawling fails</td><td><p>The Oracle connection is valid, but metadata extraction fails because the user lacks permissions to access Oracle metadata or the selected objects.</p><p><strong>Resolution:</strong></p><ul><li>Verify that the Oracle account has both connection privileges and metadata access privileges.</li><li>Confirm the account has permission to access the selected schemas and Oracle metadata objects.</li><li>Retry crawling after updating the permissions.</li></ul></td></tr><tr><td>6</td><td>Indexes are not visible after crawl</td><td><p>Index metadata is not appearing in the Data Catalog after crawl completion. This can occur due to insufficient permissions or visibility restrictions on hidden or virtual columns.</p><p><strong>Resolution:</strong></p><ul><li>Verify that the service account has required SELECT permissions on index metadata objects and confirm that hidden or virtual column visibility settings are configured correctly.</li><li>Re-run the crawl after updating permissions.</li></ul></td></tr><tr><td>7</td><td>Error while validating Oracle Connection: Failed to validate the Oracle connection using the configured JDBC URL format over a secure Oracle connection.</td><td><p>The existing Oracle JDBC driver class <code>oracle.jdbc.driver.OracleDriver</code> did not support the <code>(DESCRIPTION=...)</code> style TCPS JDBC URL format required for secure Oracle connectivity.</p><p><strong>Resolution:</strong></p><ul><li>Update the Oracle JDBC driver class from <code>oracle.jdbc.driver.OracleDriver</code> to <code>oracle.jdbc.OracleDriver</code>.</li><li>Verify that the JDBC connection string uses the correct TCPS URL format.- Ensure that the secure Oracle listener port is accessible from the Bridge server.</li></ul></td></tr></tbody></table>
{% endtab %}

{% tab title="Profiling" %}

<table data-search="true"><thead><tr><th width="85">S. No</th><th width="201">Error Message</th><th>Error Description &#x26; Resolution</th></tr></thead><tbody><tr><td>1</td><td>Profile operation completed with incomplete statistics</td><td><p>Profiling finishes successfully, but statistics are unavailable for expected objects because the profiling scope or sampling configuration excludes them.</p><p><strong>Resolution:</strong></p><ul><li>Verify Profile Rules for schemas, tables, and columns.</li><li>Review sampling configuration and sample size settings.</li><li>Confirm profiling schedules and rerun the profiling job.</li></ul></td></tr><tr><td>2</td><td>Warning: Objects marked as Inactive after crawling</td><td><p>Previously discovered metadata objects no longer exist in the Oracle source. Instead of deleting them immediately, the connector marks them as inactive.</p><p><strong>Resolution:</strong></p><ul><li>Verify whether the objects were intentionally removed from the source database.</li><li>If objects still exist, rerun crawling to refresh metadata.</li><li>Review recent database changes before removing inactive objects from the catalog.</li></ul></td></tr></tbody></table>
{% endtab %}
{% endtabs %}

## FAQs

{% tabs %}
{% tab title="Connectivity" %}

<table data-search="true"><thead><tr><th width="87">S. No.</th><th width="198">Question</th><th width="560">Answer</th></tr></thead><tbody><tr><td>1</td><td>What is the difference between SID and Service Name in the Oracle connector?</td><td><p>Oracle supports two database connection methods:</p><ul><li><strong>SID (System Identifier)</strong> connects directly to a specific Oracle database instance.</li><li><strong>Service Name</strong> connects to an Oracle service, which can represent one or more database instances.</li></ul><p>A Service Name provides greater flexibility because Oracle can automatically redirect client connections to another available instance if one instance becomes unavailable. This enables load balancing and high availability in clustered Oracle environments.</p><p>Choose the connection type based on how the Oracle administrator has exposed the database. If the administrator provides a Service Name, configure the connector accordingly. If a dedicated database instance is provided, use SID instead.</p></td></tr></tbody></table>
{% endtab %}

{% tab title="Crawling" %}

<table data-search="true"><thead><tr><th width="87">S. No.</th><th width="200">Question</th><th width="473">Answer</th></tr></thead><tbody><tr><td>1</td><td>Why are Oracle schemas treated differently from other database platforms?</td><td><p>In Oracle, a schema is automatically created whenever a user account is created.</p><ul><li>Every Oracle user owns exactly one schema.</li><li>A single user cannot own multiple schemas.</li><li>One user can access other schemas only after appropriate permissions are granted.</li><li>During crawling, the connector displays all schemas that the configured Oracle user is authorized to access.</li></ul></td></tr><tr><td>2</td><td>Why does the Oracle connector require access to Oracle system metadata views?</td><td><p>The connector retrieves Oracle metadata by querying Oracle system metadata views instead of scanning user tables directly.</p><p>These metadata views provide information required for:</p><ul><li>Schema discovery</li><li>Table metadata</li><li>Column definitions</li><li>Relationships</li><li>Indexes</li><li>Synonyms</li><li>Procedures</li><li>Functions</li><li>Triggers</li><li>Database discovery</li></ul><p>If the Oracle account does not have permission to access these metadata views, crawling may fail or return incomplete metadata. Database administrators should grant the required read permissions on the Oracle system metadata objects used by the connector.</p></td></tr><tr><td>3</td><td>Why should I enable Virtual Columns or Hidden Columns?</td><td><p>Oracle supports two specialized column types:</p><p><strong>Virtual Columns</strong></p><ul><li>Store calculated values instead of physical data.</li><li>Values are generated dynamically during query execution.</li><li>Useful for discovering business logic implemented inside Oracle tables.</li></ul><p><strong>Hidden Columns</strong></p><ul><li>Are internal Oracle-managed columns that may not appear during normal SQL queries.</li><li>Can contain metadata required for advanced Oracle functionality.</li></ul><p>These column types are disabled by default. Enable them only when complete metadata visibility is required.</p></td></tr><tr><td>4</td><td>How do Include and Exclude rules improve crawling performance?</td><td><p>Crawler Rules allow administrators to limit metadata extraction to only the required Oracle objects.</p><p>The connector supports inclusion and exclusion rules for:</p><ul><li>Schemas</li><li>Tables</li><li>Columns</li><li>Procedures</li><li>Functions</li></ul><p>Using these filters helps:</p><ul><li>Reduce crawl duration</li><li>Minimize unnecessary metadata collection</li><li>Improve overall crawler performance</li><li>Reduce resource consumption on large Oracle environments</li><li>Focus governance activities on business-critical databases</li></ul><p>These rules are particularly useful when Oracle environments contain hundreds of schemas or thousands of tables.</p></td></tr><tr><td>5</td><td>What Oracle objects can be crawled by the connector?</td><td><p>The connector supports configurable metadata extraction for several Oracle object types.</p><p>By default, it crawls:</p><ul><li>Schemas</li><li>Tables</li><li>Views</li><li>Columns</li></ul><p>Additional crawler options allow administrators to include:</p><ul><li>Procedures</li><li>Functions</li><li>Triggers</li><li>View Source Code</li><li>Indexes</li><li>Synonyms</li><li>Relationships</li></ul><p>Administrators can enable only the required object types, reducing crawl duration while collecting the metadata needed for governance and lineage.</p></td></tr></tbody></table>
{% endtab %}
{% endtabs %}

***

Copyright © 2026, OvalEdge LLC, Peachtree Corners, GA, USA.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ovaledge.com/connectors/connector-repositories/rdbms/oracle.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
