If a database does not exist at the point that it is required, it is created on-the-fly; this can be slow for certain RDBMS types, and so we recommended that you create any required databases ahead of time, using SQL scripts.
dbfhadmin -script -type:region -provider:pg -name:<ES-name> [-db|existdb:<database-name>] [-file:<script-name.sql>]
where <ES-name> is the name of the enterprise server region that will use the region database, and <script-name.sql> is the name of the script file to be created; <database-name> is the name of a new database (-db) or existing database (-existdb) that can house multiple datastores\regions, and a cross-region database - if you omit either option, a new database called <ES-name> will be created for the region database; <script-name.sql> is the name of the script file to be created.
dbfhadmin -script -type:crossregion -provider:pg [-db|existdb:<database-name>] [-file:<script-name.sql>]
where <database-name> is the name of a new database (-db) or existing database (-existdb) that can house multiple datastores\regions, and a cross-region database - if you omit either option, a new database called $XREGN$ will be created for the cross-region database.
Before you run the -createdb command, ensure that the psql command is on the PATH.
dbfhadmin -createdb -provider:pg -type:region -file:<script-name.sql> -user:<user>where <user> is a valid user name for the database. It is also assumed that an entry for that user name has been created in the password file %APPDATA%\postgresql\pgpass.conf on Windows, or .pgpass in the user's home directory on Linux, in order to obtain the password. On Linux, PostgreSQL also supports the use of the PGPASSFILE environment variable to specify the location of the password file. Refer to your PostgreSQL documentation for more details.
dbfhadmin -createdb -provider:pg -type:crossregion -file:<script-name.sql> -user:<user>where <user> is a valid user name for the database. It is also assumed that an entry for that user name has been created in the password file %APPDATA%\postgresql\pgpass.conf on Windows, or .pgpass in the user's home directory on Linux, in order to obtain the password. On Linux, PostgreSQL also supports the use of the PGPASSFILE environment variable to specify the location of the password file. Refer to your PostgreSQL documentation for more details.
Now that the region and cross-region databases have been created, you can configure the database configuration file to use them.