Postgres setup
profiles.yml
file is for dbt Core users onlyIf you're using dbt Cloud, you don't need to create a profiles.yml
file. This file is only for dbt Core users. To connect your data platform to dbt Cloud, refer to About data platforms.
- Maintained by: dbt Labs
- Authors: core dbt maintainers
- GitHub repo: dbt-labs/dbt-postgres
- PyPI package:
dbt-postgres
- Slack channel: #db-postgres
- Supported dbt Core version: v0.4.0 and newer
- dbt Cloud support: Supported
- Minimum data platform version: n/a
Installing dbt-postgres
Use pip
to install the adapter. Before 1.8, installing the adapter would automatically install dbt-core
and any additional dependencies. Beginning in 1.8, installing an adapter does not automatically install dbt-core
. This is because adapters and dbt Core versions have been decoupled from each other so we no longer want to overwrite existing dbt-core installations.
Use the following command for installation:
Configuring dbt-postgres
For Postgres-specific configuration, please refer to Postgres configs.
Profile Configuration
Postgres targets should be set up using the following configuration in your profiles.yml
file.
company-name:
target: dev
outputs:
dev:
type: postgres
host: [hostname]
user: [username]
password: [password]
port: [port]
dbname: [database name] # or database instead of dbname
schema: [dbt schema]
threads: [optional, 1 or more]
keepalives_idle: 0 # default 0, indicating the system default. See below
connect_timeout: 10 # default 10 seconds
retries: 1 # default 1 retry on error/timeout when opening connections
search_path: [optional, override the default postgres search_path]
role: [optional, set the role dbt assumes when executing queries]
sslmode: [optional, set the sslmode used to connect to the database]
sslcert: [optional, set the sslcert to control the certifcate file location]
sslkey: [optional, set the sslkey to control the location of the private key]
sslrootcert: [optional, set the sslrootcert config value to a new file path in order to customize the file location that contain root certificates]