doctl databases create

Go to Navigation


doctl databases create <name> [flags]




Creates a database cluster with the specified name.

You can customize the configuration using the listed flags, all of which are optional. Without any flags set, the command creates a single-node, single-CPU PostgreSQL database cluster.


The following example creates a database cluster named example-database in the nyc1 region with a single 1 GB node:

doctl databases create example-database --region nyc1 --size db-s-1vcpu-1gb --num-nodes 1


Option Description
--engine The database’s engine. Possible values are: pg, mysql, redis, mongodb, and kafka.
Default: pg
--help , -h Help for this command
--num-nodes The number of nodes in the database cluster. Valid values are 1-3. In addition to the primary node, up to two standby nodes may be added for high availability.
Default: 1
--private-network-uuid The UUID of a VPC to create the database cluster in. The command uses the region’s default VPC if excluded.
--region The data center region where the database cluster resides, such as nyc1 or sfo2.
Default: nyc1
--restore-from-cluster-name The name of an existing database cluster to restore from.
--restore-from-timestamp The timestamp of an existing database cluster backup in UTC combined date and time format (2006-01-02 15:04:05 +0000 UTC). The most recent backup is used if excluded.
--size The size of the nodes in the database cluster, for example db-s-1vcpu-1gb indicates a 1 CPU, 1GB node. For a list of available size slugs, visit:
Default: db-s-1vcpu-1gb
--storage-size-mib The amount of disk space allocated to the cluster. Applicable for PostgreSQL and MySQL clusters. Each plan size has a default value but can be increased in increments up to a maximum amount. For ranges, visit:
Default: 0
--tag A comma-separated list of tags to apply to the database cluster.
--version The database engine’s version, such as 14 for PostgreSQL version 14.
--wait A boolean value that specifies whether to wait for the database cluster to be provisioned before returning control to the terminal.
Default: false
Command Description
doctl databases Display commands that manage databases

Global Flags

Option Description
--access-token, -t API V2 access token
--api-url, -u Override default API endpoint
--config, -c Specify a custom config file
  • macOS: ${HOME}/Library/Application Support/doctl/config.yaml
  • Linux: ${XDG_CONFIG_HOME}/doctl/config.yaml
  • Windows: %APPDATA%\doctl\config.yaml
--context Specify a custom authentication context name
--http-retry-max Set maximum number of retries for requests that fail with a 429 or 500-level error
Default: 5
--http-retry-wait-max Set the minimum number of seconds to wait before retrying a failed request
Default: 30
--http-retry-wait-min Set the maximum number of seconds to wait before retrying a failed request
Default: 1
--interactive Enable interactive behavior. Defaults to true if the terminal supports it (default false)
Default: false
--output, -o Desired output format [text|json]
Default: text
--trace Show a log of network activity while performing a command
Default: false
--verbose, -v Enable verbose output
Default: false