Configure PostgreSQL

You can configure PostgreSQL by editing the configuration files in the database cluster directory to set database parameters, authentication, and client access. By default, PostgreSQL uses the /var/lib/pgsql/data/ directory.

About this task

The PostgreSQL configuration files include:

  • /var/lib/pgsql/data/postgresql.conf - sets the database cluster parameters.
  • /var/lib/pgsql/data/postgresql.auto.conf - holds basic PostgreSQL settings similarly to postgresql.conf. However, this file is under the server’s control. The ALTER SYSTEM queries edit this file. You cannot edit it manually.
  • /var/lib/pgsql/data/pg_ident.conf - maps user identities from external authentication mechanisms into the PostgreSQL user identities.
  • /var/lib/pgsql/data/pg_hba.conf - configures client authentication for PostgreSQL databases.

Procedure

  1. Edit the /var/lib/pgsql/data/postgresql.conf file and configure basic settings of the database cluster parameters, for example:
    log_connections = yes
    log_destination = 'syslog'
    search_path = '"$user", public'
    shared_buffers = 128MB
    password_encryption = scram-sha-256
  2. Edit the /var/lib/pgsql/data/pg_hba.conf file and configure client authentication, for example:
    # TYPE    DATABASE       USER        ADDRESS              METHOD
    local     all            all                              trust
    host      postgres       all         192.168.93.0/24      ident
    host      all            all         .example.com         scram-sha-256
  3. Restart the postgresql service so that the changes become effective:
    # systemctl restart postgresql.service