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>
Syntax legend
| Syntax conventions | Description |
|---|---|
Italic, bold, or |
Syntax diagrams and code samples use one or more of these styles to mark placeholders for variable values. Replace placeholders with a valid option or your own user-defined value. In CQL statements, angle brackets are required to enclose data types in a set, list, map, or tuple.
Separate the data types with a comma.
For example: In Search CQL statements, angle brackets are used to identify the entity and literal value to overwrite the XML element in the schema and |
|
Square brackets surround optional command arguments. Do not type the square brackets. |
|
Parentheses identify a group to choose from. Do not type the parentheses. |
|
A pipe separates alternative elements. Type any one of the elements. Do not type the pipe. |
|
Indicates that you can repeat the syntax element as often as required. |
|
Single quotation marks must surround literal strings in CQL statements.
Use single quotation marks to preserve upper case.
+
For Search CQL only: Single quotation marks surround an entire XML schema declaration, such as |
|
Map collection.
Curly braces enclose maps ( |
|
Ends a CQL statement. |
|
Separate command line options from command arguments with two hyphens. This syntax is useful when arguments might be mistaken for command line options. |
Options
If an option has a short and long form, both forms are given, separated by a comma.
- -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.
- -c, --connections-per-host num_connections
-
Maximum number of connections per host for streaming. Overrides the value of the
streaming_connections_per_hostoption incassandra.yaml. - -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 (for example, dsefs keyspaces, and keyspaces with local strategy).
- -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 a TRUNCATE), streams all ranges
-
reset-no-snapshot - (like reset) resets the locally available ranges, removes all locally present data (like a TRUNCATE), streams all ranges but prevents a snapshot even if auto_snapshot is 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-b. To 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