1CREATEDB(1)              PostgreSQL 12.2 Documentation             CREATEDB(1)
2
3
4

NAME

6       createdb - create a new PostgreSQL database
7

SYNOPSIS

9       createdb [connection-option...] [option...] [dbname [description]]
10

DESCRIPTION

12       createdb creates a new PostgreSQL database.
13
14       Normally, the database user who executes this command becomes the owner
15       of the new database. However, a different owner can be specified via
16       the -O option, if the executing user has appropriate privileges.
17
18       createdb is a wrapper around the SQL command CREATE DATABASE
19       (CREATE_DATABASE(7)). There is no effective difference between creating
20       databases via this utility and via other methods for accessing the
21       server.
22

OPTIONS

24       createdb accepts the following command-line arguments:
25
26       dbname
27           Specifies the name of the database to be created. The name must be
28           unique among all PostgreSQL databases in this cluster. The default
29           is to create a database with the same name as the current system
30           user.
31
32       description
33           Specifies a comment to be associated with the newly created
34           database.
35
36       -D tablespace
37       --tablespace=tablespace
38           Specifies the default tablespace for the database. (This name is
39           processed as a double-quoted identifier.)
40
41       -e
42       --echo
43           Echo the commands that createdb generates and sends to the server.
44
45       -E encoding
46       --encoding=encoding
47           Specifies the character encoding scheme to be used in this
48           database. The character sets supported by the PostgreSQL server are
49           described in Section 23.3.1.
50
51       -l locale
52       --locale=locale
53           Specifies the locale to be used in this database. This is
54           equivalent to specifying both --lc-collate and --lc-ctype.
55
56       --lc-collate=locale
57           Specifies the LC_COLLATE setting to be used in this database.
58
59       --lc-ctype=locale
60           Specifies the LC_CTYPE setting to be used in this database.
61
62       -O owner
63       --owner=owner
64           Specifies the database user who will own the new database. (This
65           name is processed as a double-quoted identifier.)
66
67       -T template
68       --template=template
69           Specifies the template database from which to build this database.
70           (This name is processed as a double-quoted identifier.)
71
72       -V
73       --version
74           Print the createdb version and exit.
75
76       -?
77       --help
78           Show help about createdb command line arguments, and exit.
79
80       The options -D, -l, -E, -O, and -T correspond to options of the
81       underlying SQL command CREATE DATABASE (CREATE_DATABASE(7)); see there
82       for more information about them.
83
84       createdb also accepts the following command-line arguments for
85       connection parameters:
86
87       -h host
88       --host=host
89           Specifies the host name of the machine on which the server is
90           running. If the value begins with a slash, it is used as the
91           directory for the Unix domain socket.
92
93       -p port
94       --port=port
95           Specifies the TCP port or the local Unix domain socket file
96           extension on which the server is listening for connections.
97
98       -U username
99       --username=username
100           User name to connect as.
101
102       -w
103       --no-password
104           Never issue a password prompt. If the server requires password
105           authentication and a password is not available by other means such
106           as a .pgpass file, the connection attempt will fail. This option
107           can be useful in batch jobs and scripts where no user is present to
108           enter a password.
109
110       -W
111       --password
112           Force createdb to prompt for a password before connecting to a
113           database.
114
115           This option is never essential, since createdb will automatically
116           prompt for a password if the server demands password
117           authentication. However, createdb will waste a connection attempt
118           finding out that the server wants a password. In some cases it is
119           worth typing -W to avoid the extra connection attempt.
120
121       --maintenance-db=dbname
122           Specifies the name of the database to connect to when creating the
123           new database. If not specified, the postgres database will be used;
124           if that does not exist (or if it is the name of the new database
125           being created), template1 will be used.
126

ENVIRONMENT

128       PGDATABASE
129           If set, the name of the database to create, unless overridden on
130           the command line.
131
132       PGHOST
133       PGPORT
134       PGUSER
135           Default connection parameters.  PGUSER also determines the name of
136           the database to create, if it is not specified on the command line
137           or by PGDATABASE.
138
139       PG_COLOR
140           Specifies whether to use color in diagnostics messages. Possible
141           values are always, auto, never.
142
143       This utility, like most other PostgreSQL utilities, also uses the
144       environment variables supported by libpq (see Section 33.14).
145

DIAGNOSTICS

147       In case of difficulty, see CREATE DATABASE (CREATE_DATABASE(7)) and
148       psql(1) for discussions of potential problems and error messages. The
149       database server must be running at the targeted host. Also, any default
150       connection settings and environment variables used by the libpq
151       front-end library will apply.
152

EXAMPLES

154       To create the database demo using the default database server:
155
156           $ createdb demo
157
158       To create the database demo using the server on host eden, port 5000,
159       using the template0 template database, here is the command-line command
160       and the underlying SQL command:
161
162           $ createdb -p 5000 -h eden -T template0 -e demo
163           CREATE DATABASE demo TEMPLATE template0;
164

SEE ALSO

166       dropdb(1), CREATE DATABASE (CREATE_DATABASE(7))
167
168
169
170PostgreSQL 12.2                      2020                          CREATEDB(1)
Impressum