#9044·agno

[Feature Request] Oracle Database support as a storage provider

Author: juliosouzamCreated Jul 18, 2026Updated Sep 17, 2026

Problem Description

Agno currently ships storage providers for Postgres, MySQL, SQLite, MongoDB, DynamoDB, ClickHouse, SingleStore, Valkey, Turso and others, but there is no provider for Oracle Database. Teams whose infrastructure runs on Oracle (a very common constraint in enterprise environments) cannot persist Agno sessions, memories, knowledge, metrics, evals or traces natively — they have to introduce and operate a second database engine just for Agno.

Proposed Solution

Add a first-class Oracle Database storage provider following the existing SQLAlchemy provider pattern (MySQL is the closest model):

  • OracleDb(BaseDb) and AsyncOracleDb(AsyncBaseDb) in agno/db/oracle/, built on SQLAlchemy with the python-oracledb thin driver (no Instant Client required); async via the native oracle+oracledb_async dialect.
  • Same scope as the MySQL provider: sessions, memories, metrics, knowledge, evals, traces, spans and cultural knowledge.
  • Oracle-specific semantics handled inside the provider: MERGE-based upserts (Oracle has no ON CONFLICT/ON DUPLICATE KEY), JSON columns stored as CLOB with explicit serialization (the SQLAlchemy Oracle dialect has no native JSON support), schema-as-user semantics, and data-dictionary introspection (all_tables/all_indexes).
  • oracle extra in pyproject.toml, unit tests (mock engine, CI-safe), integration tests against the official container-registry.oracle.com/database/free image, cookbook examples and a migration runner.

Alternatives Considered

  • Syncing/replicating Agno data from a supported database into Oracle — adds operational complexity and defeats the purpose of native persistence.
  • Using a generic gateway in front of Oracle — no maintained option fits Agno's SQLAlchemy provider interface.

Additional Context

I have a complete implementation ready and validated against a real Oracle AI Database 26ai Free instance (93 integration tests passing, full unit suite green). PR to follow, linked to this issue.

Would you like to work on this?

  • Yes, I'd love to work on it!