Cockroach Commands

This version of CockroachDB is no longer supported. For more details, see the Release Support Policy.

This page introduces the cockroach commands for configuring, starting, and managing a CockroachDB cluster, as well as environment variables that can be used in place of certain flags.

You can run cockroach help in your shell to get similar guidance.


Command Usage
cockroach start Start a node.
cockroach init Initialize a cluster.
cockroach cert Create CA, node, and client certificates.
cockroach quit Temporarily stop a node or permanently remove a node.
cockroach sql Use the built-in SQL client.
cockroach sqlfmt Reformat SQL queries for enhanced clarity.
cockroach user Get, set, list, and remove users.
cockroach zone Deprecated To configure the number and location of replicas for specific sets of data, use ALTER ... CONFIGURE ZONE and SHOW ZONE CONFIGURATIONS.
cockroach node List node IDs, show their status, decommission nodes for removal, or recommission nodes.
cockroach dump Back up a table by outputting the SQL statements required to recreate the table and all its rows.
cockroach demo Start a temporary, in-memory, single-node CockroachDB cluster, and open an interactive SQL shell to it.
cockroach gen Generate manpages, a bash completion file, example SQL data, or an HAProxy configuration file for a running cluster.
cockroach version Output CockroachDB version details.
cockroach debug ballast Create a large, unused file in a node's storage directory that you can delete if the node runs out of disk space.
cockroach debug encryption-active-key View the encryption algorithm and store key.
cockroach debug zip Generate a .zip file that can help Cockroach Labs troubleshoot issues with your cluster.
cockroach debug merge-logs Merge multiple log files from different machines into a single stream.
cockroach workload Run a built-in load generator against a cluster.

Environment variables

For many common cockroach flags, such as --port and --user, you can set environment variables once instead of manually passing the flags each time you execute commands.

  • To find out which flags support environment variables, see the documentation for each command.
  • To output the current configuration of CockroachDB and other environment variables, run env.
  • When a node uses environment variables on startup, the variable names are printed to the node's logs; however, the variable values are not.

CockroachDB prioritizes command flags, environment variables, and defaults as follows:

  1. If a flag is set for a command, CockroachDB uses it.
  2. If a flag is not set for a command, CockroachDB uses the corresponding environment variable.
  3. If neither the flag nor environment variable is set, CockroachDB uses the default for the flag.
  4. If there's no flag default, CockroachDB gives an error.

For more details, see Client Connection Parameters.

YesYes NoNo