--- title: Data Connections --- # Data Connections This guide helps you quickly enable conversation history storage with a backend that matches your environment.
#### Before you begin - Completed the [Getting Started](index.md) guide - SMG running with at least one worker
--- ## Choose a Backend SMG supports these history backends via `--history-backend`: - `memory` (default): in-process, non-persistent - `none`: disable history storage - `postgres`: durable relational storage - `redis`: fast key-value storage with optional retention - `oracle`: enterprise Oracle backend --- ## Quick Start Commands ### Memory (default) ```bash smg \ --worker-urls http://worker:8000 \ --history-backend memory ``` ### No history ```bash smg \ --worker-urls http://worker:8000 \ --history-backend none ``` ### PostgreSQL ```bash smg \ --worker-urls http://worker:8000 \ --history-backend postgres \ --postgres-db-url "postgres://user:password@localhost:5432/smg" \ --postgres-pool-max-size 16 ``` ### Redis ```bash smg \ --worker-urls http://worker:8000 \ --history-backend redis \ --redis-url "redis://localhost:6379" \ --redis-pool-max-size 16 \ --redis-retention-days 30 ``` Set `--redis-retention-days -1` for persistent retention. ### Oracle ```bash smg \ --worker-urls http://worker:8000 \ --history-backend oracle \ --oracle-wallet-path /path/to/wallet \ --oracle-tns-alias mydb_high \ --oracle-user admin \ --oracle-password "$ORACLE_PASSWORD" ``` --- ## Required Flags by Backend | Backend | Required flags | |---------|----------------| | `memory` | none | | `none` | none | | `postgres` | `--postgres-db-url` | | `redis` | `--redis-url` | | `oracle` | `--oracle-user`, `--oracle-password`, and one of (`--oracle-dsn`) or (`--oracle-wallet-path` + `--oracle-tns-alias`) (omit user/password when `--oracle-external-auth` is set) | --- ## Environment Variables You can provide Oracle credentials via environment variables: - `ATP_WALLET_PATH` - `ATP_TNS_ALIAS` - `ATP_DSN` - `ATP_USER` - `ATP_PASSWORD` - `ATP_EXTERNAL_AUTH` - `ATP_POOL_MIN` - `ATP_POOL_MAX` - `ATP_POOL_TIMEOUT_SECS` --- ## Verify ```bash curl http://localhost:30000/health ``` If startup fails, SMG returns a config validation error (for example missing DB URL or Oracle credentials). --- ## Next Steps - [Chat History Concepts](../concepts/data/chat-history.md) — backend architecture and tradeoffs - [Configuration Reference](../reference/configuration.md#storage-configuration) — full storage flag reference