nodetool rebuild
This command operates on a single node where the command is run. It streams data from multiple nodes in the specified datacenter. Use this command on each node after adding a datacenter to stream data to that node.
|
If nodetool rebuild is interrupted before completion, restart it by re-entering the command. The process resumes from the point at which it was interrupted. |
Synopsis
nodetool [<connection_options>] rebuild
[-c <num_connections>] [-dc <src_dc_names>] [-ks <keyspace_name>]
[-m <mode>] [-s <source_ip_address>]
[-ts (<start_token_1>,<end_token_1>],(<start_token_2>,<end_token_2>], ...]
[-x <exclude_source_IPs>] [-xdc <exclude_dc_names>] [--] <src-dc-name>
Definition
If a parameter has multiple forms, the following reference provides both the short form and long form, separated by a comma.
Connection options
- -h, --host hostname
-
The hostname or IP address of a remote node or nodes. When omitted, the default is the local machine.
- -p, --port jmx_port
-
The JMX port number.
- -pw, --password jmxpassword
-
The JMX password for authenticating with secure JMX. If a password is not provided, you are prompted to enter one.
- -pwf, --password-file jmx_password_filepath
-
The filepath to the file that stores JMX authentication credentials.
- -u, --username jmx_username
-
The username for authenticating with secure JMX.
Command arguments
---
Separates an option from an argument that could be mistaken for an option.
- -c, --connections-per-host num_connections
-
Maximum number of connections per host for streaming. Overrides value of
streaming_connections_per_hostin thecassandra.yamlfile. - -dc src_dc_names, --dcs src_dc_names
-
Comma-separated list of datacenters from which to stream:
-
src_dc_names: Datacenter names are case-sensitive. For example,dc-a,dc-b. To include a rack name, separate datacenter and rack name with a colon. For example,dc-a:rack1,dc-a:rack2. -
when not set: The default is to pick any datacenter.
-
- -ks, --keyspace keyspace_name, …
-
Comma-separated list of one or more keyspaces. List only the keyspaces to include in the rebuild.
Do not include keyspaces that are not replicated across datacenters, such as keyspaces with a replication factor of
1or only one datacenter name in thereplicationproperties. - -m, --mode mode
-
-
normal(default): Conventional behavior, streams only ranges that are not already locally available -
refetch: Resets locally available ranges, streams all ranges but leaves current data untouched -
reset: Resets the locally available ranges, removes all locally present data (like aTRUNCATE), streams all ranges -
reset-no-snapshot: (likereset) Resets the locally available ranges, removes all locally present data (like aTRUNCATE), streams all ranges but prevents a snapshot even ifauto_snapshotis enabled
-
- -s, --sources source_ip_address
-
Comma-separated list of IP addresses from which to stream.
- -ts, --tokens (start_token_1,end_token_1], (start_token_2,end_token_2], …
-
Comma-separated list of token ranges, in this format
(start_token_1,end_token_1],(start_token_2,end_token_2],(start_token_n,end_token_n] - -x, --exclude-sources exclude_source_IPs
-
Comma-separated list of IP addresses to exclude from streaming.
- -xdc, --exclude-dcs exclude_dc_name
-
Comma-separated list of datacenters to exclude from streaming. For example:
dc-a,dc-bTo include a rack name in the list, separate datacenter and rack name with a colon. For example:
dc-a:rack1,dc-a:rack2
Examples
Rebuild from any datacenter
nodetool rebuild
Rebuild from DC2
nodetool rebuild -dc DC2
Rebuild from DC2 and DC3
nodetool rebuild -dc DC2, DC3