initdb

A server utility which creates a new PostgreSQL cluster

initdb is a server utility which initialises the data directory for a new PostgreSQL cluster.

initdb has always been present in PostgreSQL.

Change history

Examples

Basic usage example for initdb:

$ initdb -D /var/lib/pgsql
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locale "C".
The default database encoding has accordingly been set to "SQL_ASCII".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory /var/lib/pgsql ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default timezone ... UTC
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok

WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    pg_ctl -D /var/lib/pgsql -l logfile start
  • PostgreSQL documentation: initdb

Categories

Configuration, Data directory, Server utility, Storage

See also

pg_ctl