dbt-oracle is a dbt (data build tool) adapter that enables dbt to connect to and transform data within Oracle Autonomous Database. It allows users to leverage dbt's powerful data transformation capabilities on their Oracle data warehouses. The library is actively maintained, with frequent patch releases within minor versions following dbt-core's release cadence. The current version is 1.10.0.
pip install dbt-oracleNo compatibility data collected yet for this library.
To use dbt-oracle, you configure your Oracle connection details in a `profiles.yml` file, typically located in `~/.dbt/profiles.yml`. This configuration defines how dbt connects to your Oracle database. After setting up the profile, you can initialize a dbt project and run your models using standard dbt CLI commands like `dbt run`.
Always check the dbt-oracle GitHub releases or documentation for the `dbt-core` version it supports before upgrading either. For example, v1.9.4 requires `dbt-core` 1.10.
Ensure your Python environment is version 3.9 or higher (current PyPI requires >=3.9).
Refer to the `oracledb` documentation for its specific system requirements. Reinstall `oracledb` if you encounter issues after `dbt-oracle` upgrades its driver version.
Carefully review snapshot models and consider a full refresh or testing in a non-production environment after upgrading to these versions. Monitor for changes in hash collisions or validity period calculations.
Check `dbt-oracle`'s GitHub releases or documentation for compatible `dbt-core` versions. Reinstall `dbt-oracle` and `dbt-core` in a clean virtual environment, ensuring their versions align. Example: `pip install dbt-core==1.10.x dbt-oracle==1.9.4`.
Explicitly install the `oracledb` driver: `pip install oracledb`. If it's installed, ensure your `PATH` and `LD_LIBRARY_PATH` (or `DYLD_LIBRARY_PATH` on macOS) correctly point to your Oracle Client libraries if not using a thin client.
Verify all connection details in your `profiles.yml` are accurate. Test connectivity using an external tool like SQL*Plus, SQL Developer, or `tnsping` with the same credentials. Ensure the Oracle database is accessible from the dbt machine.
Upgrade your Python environment to version 3.9 or newer. Create a new virtual environment with a supported Python version and reinstall `dbt-oracle`.