Documentation Index
Fetch the complete documentation index at: https://docs.datafold.com/llms.txt
Use this file to discover all available pages before exploring further.
Oracle 19c and later are fully supported. If you use an Oracle version older than 19c, please contact support@datafold.com before proceeding.
Column-level Lineage is not currently supported for Oracle.
- Create a Datafold user in Oracle
- Grant read access to your data
- Grant required system privileges
- Configure the connection in Datafold
A full script is available at the bottom of this page.
Create a Datafold user
Datafold connects to Oracle using a dedicated database user. This user needs its own schema where Datafold can create temporary working tables during data diffs. If your Oracle instance uses a multitenant architecture (CDB/PDB), first switch to the pluggable database where your data lives:Grant read access to your data
Datafold needsSELECT access on every table you want to diff. There are two approaches depending on how broad your access requirements are.
Option A: Grant access to all tables (recommended for most migrations)
If Datafold should be able to diff any table in the database, grant theSELECT ANY TABLE system privilege:
Option B: Grant access per schema
If you need to restrict Datafold to specific schemas, run the following block for each schema. ReplaceYOURSCHEMA with the schema name:
Grant required system privileges
Datafold requires two additional privileges to function correctly.Tablespace quota (required)
During a diff, Datafold creates temporary tables in theDATAFOLD schema to store intermediate results. The user needs permission to consume disk space for these tables.
You can grant unlimited tablespace:
Full script
Copy and customize this script for your environment. See the comments for what to change.Configure in Datafold
Once the Oracle user is created and grants are in place, add the connection in Datafold.| Field Name | Description |
|---|---|
| Name | A display name for this connection within Datafold (e.g., “Oracle Production”) |
| Host | The hostname or IP address of your Oracle database server |
| Port | The Oracle listener port (default: 1521) |
| User | DATAFOLD (the user created above) |
| Password | The password you set when creating the DATAFOLD user |
| Connection type | Choose Service or SID depending on your Oracle setup. Use Service if unsure — it is the default for most modern Oracle configurations. |
| Service (or SID) | The Oracle service name or SID to connect to (e.g., XEPDB1 or your database name) |
| Schema for temporary tables | DATAFOLD — this is the schema created automatically when you created the DATAFOLD user |
Troubleshooting
ORA-00942: table or view does not exist
The Datafold user does not have SELECT access on the table being diffed. Verify that you ran the grants from Step 3 for the correct schema.
ORA-28000: the account is locked
The DATAFOLD user account has been locked, typically due to failed login attempts. Unlock it with:
ORA-01950: no privileges on tablespace
The DATAFOLD user does not have a tablespace quota. Run the tablespace grant from Step 4.