Appendix B. Backend Options for postgres
The postgres program is the actual backend server that processes SQL statements. It is generally not called directly, but invoked through the multiuser postmaster process. It can be helpful to know the options available to this program, however, as they can be called indirectly through the postmaster’s -o flag.
The following syntax diagram shows the options recognized by postgres:
postgres [ -A { 0 | 1 } ] [ -B buffers ] [ -c name=value ] [ -d debug-level ]
[ -D datadir ] [ -e ] [ -E ] [ -f { s | i | n | m | h } ] [ -F ]
[ -i ] [ -L ] [ -N ] [ -o file-name ] [ -O ] [ -P ]
[ -s | -t { pa | pl | ex } ] [ -S sort_mem ] [ -W num ] database
postgres [ -A { 0 | 1 } ] [ -B buffers ] [ -c name=value ] [ -d debug-level ]
[ -D datadir ] [ -e ] [ -f { s | i | n | m | h } ] [ -F ] [ -i ]
[ -L ] [ -o file-name ] [ -O ] [ -p database ] [ -P ]
[ -s | -t { pa | pl | ex } ] [ -S sort_mem ] [ -v version ] [ -W num ]- -A { 0 | 1 }
The run-time assertion check parameter. This enables debugging, if the debugging option was enabled during compilation of PostgreSQL. This parameter should only be used by knowledgeable developers working on PostgreSQL.
- -B buffers
The number of shared-memory disk buffers that postmaster will allocate for use by the backend. By default, this is 64.
Note

The buffers value passed to -B must be at least twice the number supplied for the -N parameter. ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access