PostgreSQL (Destination)
Install
See the Install guide for the full setup, including Windows PowerShell.
curl -fsSL https://install.skippr.io/install.sh | shClick to copyInstalling Skippr means accepting the Skippr EULA.
Loads data into PostgreSQL tables.
Configuration
data_sinks:
warehouse:
Postgres:
host: localhost
port: 5432
user: ${POSTGRES_USER}
password: ${POSTGRES_PASSWORD}
database: analytics
schema: raw| Field | Default | Description |
|---|---|---|
host | localhost | PostgreSQL host |
port | 5432 | PostgreSQL port |
user | Database user | |
password | Database password | |
database | (required) | PostgreSQL database name |
schema | public | Target schema |
sslmode | Libpq-style SSL mode (disable, require, prefer) |
CLI
skippr connect warehouse postgres \
--host localhost \
--port 5432 \
--user myuser \
--password '${POSTGRES_PASSWORD}' \
--database analytics \
--schema public \
--sslmode preferOr run without flags to be prompted interactively.
| Flag | Description |
|---|---|
--host | PostgreSQL host |
--port | PostgreSQL port |
--user | Database user |
--password | Database password |
--database | PostgreSQL database name |
--schema | Target schema (default: public) |
--sslmode | SSL mode |
Config output
Running connect warehouse postgres writes the following to skippr.yml:
data_sinks:
warehouse:
Postgres:
host: localhost
port: 5432
user: ${POSTGRES_USER}
password: ${POSTGRES_PASSWORD}
database: analytics
schema: public
sslmode: preferAuthentication
Authentication uses environment variables. Credentials are never stored in the config file.
| Variable | Default | Description |
|---|---|---|
POSTGRES_HOST | localhost | PostgreSQL host |
POSTGRES_PORT | 5432 | PostgreSQL port |
POSTGRES_USER | Database user | |
POSTGRES_PASSWORD | Database password | |
POSTGRES_DATABASE | Database name (overrides config file) | |
POSTGRES_SCHEMA | public | Target schema (overrides config file) |
POSTGRES_SSLMODE | SSL mode (e.g. disable, require, prefer) |
Example
export POSTGRES_HOST="localhost"
export POSTGRES_USER="myuser"
export POSTGRES_PASSWORD="mypassword"Permissions or Network Requirements
The database user needs:
CREATEon the target database (for silver/gold schema creation)USAGEandCREATEon the target schema (for loading data)- Ability to create tables and insert data
Troubleshooting
| Symptom | Fix |
|---|---|
connection refused | Check POSTGRES_HOST and POSTGRES_PORT are correct and the server is running |
password authentication failed | Verify POSTGRES_USER and POSTGRES_PASSWORD |
database "..." does not exist | Create the database first, or check the database field in config |
| SSL errors | Set POSTGRES_SSLMODE=disable for local development |
CDC Support
PostgreSQL destination supports CDC with exactly-once final-state reconciliation via staging-table MERGE semantics. Skippr automatically creates _skippr_order_token columns and tombstone tables.
See CDC Destinations -- PostgreSQL for details.
Next steps
- Start with Quick Start: PostgreSQL.
- For CDC semantics, see CDC Destinations, CDC Guarantees, and CDC Operations.
Install
See the Install guide for the full setup, including Windows PowerShell.
curl -fsSL https://install.skippr.io/install.sh | shClick to copyInstalling Skippr means accepting the Skippr EULA.
