initlocation creates a new PostgreSQL secondary database storage area. See the discussion under CREATE DATABASE about how to manage and use secondary storage areas. If the argument does not contain a slash and is not valid as a path, it is assumed to be an environment variable, which is referenced. See the examples at the end.
In order to use this command you must be logged in (using 'su', for example) the database superuser.
To create a database in an alternate location, using an environment variable:
$ export PGDATA2=/opt/postgres/data $ initlocation PGDATA2 $ createdb 'testdb' -D 'PGDATA2/testdb'
Alternatively, if you allow absolute paths you could write:
$ initlocation /opt/postgres/data $ createdb 'testdb' -D '/opt/postgres/data/testdb'