2020-06-30 15:08:48 +00:00
---
2020-09-30 09:10:11 +00:00
stage: Enablement
group: Database
2020-11-26 06:09:20 +00:00
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
2020-06-30 15:08:48 +00:00
type: reference
---
# Configuring PostgreSQL for scaling
In this section, you'll be guided through configuring a PostgreSQL database to
2020-09-30 09:10:11 +00:00
be used with GitLab in one of our [reference architectures ](../reference_architectures/index.md ).
2020-06-30 15:08:48 +00:00
There are essentially three setups to choose from.
2021-01-28 12:09:54 +00:00
## PostgreSQL replication and failover with Omnibus GitLab **(PREMIUM SELF)**
2020-06-30 15:08:48 +00:00
This setup is for when you have installed GitLab using the
[Omnibus GitLab **Enterprise Edition** (EE) package ](https://about.gitlab.com/install/?version=ee ).
2021-06-14 15:09:48 +00:00
All the tools that are needed like PostgreSQL, PgBouncer, and Patroni are bundled in
2020-06-30 15:08:48 +00:00
the package, so you can it to set up the whole PostgreSQL infrastructure (primary, replica).
[> Read how to set up PostgreSQL replication and failover using Omnibus GitLab ](replication_and_failover.md )
2021-01-28 06:08:59 +00:00
## Standalone PostgreSQL using Omnibus GitLab **(FREE SELF)**
2020-06-30 15:08:48 +00:00
This setup is for when you have installed the
[Omnibus GitLab packages ](https://about.gitlab.com/install/ ) (CE or EE),
to use the bundled PostgreSQL having only its service enabled.
[> Read how to set up a standalone PostgreSQL instance using Omnibus GitLab ](standalone.md )
2021-01-28 06:08:59 +00:00
## Provide your own PostgreSQL instance **(FREE SELF)**
2020-06-30 15:08:48 +00:00
This setup is for when you have installed GitLab using the
[Omnibus GitLab packages ](https://about.gitlab.com/install/ ) (CE or EE),
or installed it [from source ](../../install/installation.md ), but you want to use
your own external PostgreSQL server.
[> Read how to set up an external PostgreSQL instance ](external.md )