These options can be passed to the rethinkdb
server on the command line on startup. Many of these options can also be set in the configuration file; read Configuration file options for a detailed list.
-d [ --directory ] path
: specify directory to store data and metadata--io-threads n
: how many simultaneous I/O operations can happen at the same time--direct-io
: use direct I/O for file access--cache-size mb
: total cache size (in megabytes) for the process. Can be ‘auto’.-n [ --server-name ] arg
: the name for this server (as will appear in the metadata). If not specified, it will be randomly chosen from a short list of names.-t [ --server-tag ] arg
: a tag for this server. Can be specified multiple times.--bind {all | addr}
: add the address of a local interface to listen on when accepting connections; loopback addresses are enabled by default--bind-http {all | addr}
: bind the web administration UI port to a specific address--bind-cluster {all | addr}
: bind the cluster connection port to a specific address--bind-driver {all | addr}
: bind the client driver to a specific address--no-default-bind
: disable automatic listening on loopback addresses, unless explicitly specified in a separate --bind
option--cluster-port port
: port for receiving connections from other nodes--driver-port port
: port for RethinkDB protocol client drivers-o [ --port-offset ] offset
: all ports used locally will have this value added-j [ --join ] host:port
: host and port of a RethinkDB node to connect to--reql-http-proxy [protocol://]host[:port]
: HTTP proxy to use for performing r.http(...)
queries, default port is 1080--canonical-address addr
: address that other RethinkDB instances will use to connect to us, can be specified multiple times--cluster-reconnect-timeout secs
: the amount of time, in seconds, this server will try to reconnect to a cluster if it loses connection before giving up; default 86400
The --bind
option controls the default behavior for all RethinkDB ports. If it’s specified, the --bind-http
, --bind-cluster
and --bind-driver
options will override that behavior for a specific port. So:
rethinkdb --bind all --bind-cluster 192.168.0.1
This will bind the HTTP and driver ports on all available interfaces, while the cluster port will only be bound on the loopback interface and 192.168.0.1
.
--http-tls-key key_filename
: private key to use for web administration console TLS--http-tls-cert cert_filename
: certificate to use for web administration console TLSNote: --http-tls-key
and --http-tls-cert
must be used together.
--driver-tls-key key_filename
: private key to use for client driver connection TLS--driver-tls-cert cert_filename
: certificate to use for client driver connection TLS--driver-tls-ca ca_filename
: CA certificate bundle used to verify client certificates; TLS client authentication disabled if omittedNote: --driver-tls-key
and --driver-tls-cert
must be used together; --driver-tls-ca
is optional.
--cluster-tls-key key_filename
: private key to use for intra-cluster connection TLS--cluster-tls-cert cert_filename
: certificate to use for intra-cluster connection TLS--cluster-tls-ca ca_filename
: CA certificate bundle used to verify cluster peer certificatesNote: all three --cluster-tls-*
options must be used together.
--tls-min-protocol protocol
: the minimum TLS protocol version the server accepts, one of TLSv1
, TLSv1.1
, TLSv1.2
; default is TLSv1.2
--tls-ciphers cipher_list
: specify a list of TLS ciphers to use; default is EECDH+AESGCM
--tls-ecdh-curve curve_name
: specify a named elliptic curve to use for ECDHE; default is prime256v1
--tls-dhparams dhparams_filename
: provide parameters for DHE key agreement; REQUIRED if using DHE cipher suites; at least 2048-bit recommendedFor details about these options, read Securing your cluster.
--web-static-directory directory
: the directory containing web resources for the http interface--http-port port
: port for web administration console--no-http-admin
: disable web administration console-c [ --cores ] n
: the number of cores to use--pid-file path
: a file in which to write the process id when the process is running--daemon
: daemonize this rethinkdb process--runuser user
: run as the specified user--rungroup group
: run with the specified group--initial-password
: set a password for the admin
user if none has previously been set; use auto
to choose a random password that will be printed to stdout
(see Secure your cluster for more information)-h [ --help ]
: print this help-v [ --version ]
: print the version number of rethinkdb--log-file file
: specify the file to log to, defaults to ‘log_file’--no-update-check
: disable checking for available updates. Also turns off anonymous usage data collection.--config-file
: take options from a configuration filerethinkdb create
: prepare files on disk for a new server instancerethinkdb serve
: use an existing data directory to host data and serve queriesrethinkdb proxy
: run a proxy server (serve queries from an existing cluster but don’t host data)rethinkdb export
: export data from an existing cluster into a file or directoryrethinkdb import
: import data from from a file or directory into an existing clusterrethinkdb dump
: export and compress data from an existing clusterrethinkdb restore
: import compressed data into an existing clusterrethinkdb index-rebuild
: rebuild outdated secondary indexesrethinkdb install-service
: install the RethinkDB Windows service (Windows only)rethinkdb remove-service
: uninstall the RethinkDB Windows service (Windows only)For more information about subcommands, type rethinkdb help [subcommand]
at the command line.
For information about running RethinkDB as a proxy server, read Running a proxy node in “Scaling, sharding and replication.”