Skip to content
Runbook

PostgreSQL

Open source SQL relational database, robust and standards-compliant.

Databasesqlrdbmsrelationalaciddatabase

Choose a platform

Overview

PostgreSQL (often shortened to "Postgres") is an open source object-relational database management system, renowned for its reliability, strict adherence to SQL standards, and extensibility. It supports ACID transactions, complex constraints, advanced data types (JSONB, arrays, geometric types), and third-party extensions such as PostGIS and pgvector.

It is one of the go-to choices for production applications that demand data integrity and rich SQL features.

Important concepts before installing

PostgreSQL is built around a cluster: an initialized data directory (the data directory) that holds all the databases managed by a single server instance. On most distributions, this cluster is created automatically at install time; on others, you must initialize it manually before the first startup. The exact command depends on the platform: initdb directly on Arch and macOS, but sudo postgresql-setup --initdb on Fedora and RHEL.

Two configuration files are central:

  • postgresql.conf — server parameters (memory, connections, logging).
  • pg_hba.conf — client authentication rules (who can connect, from where, and how).

The location of these files varies greatly by platform: see the page for your system.

Command-line tools

PostgreSQL ships with a suite of utilities: psql (interactive SQL client), pg_dump and pg_restore (logical backup and restore), createdb / dropdb (database management), and pg_ctl (low-level server control).