addShard
On this page本页内容
Definition
addShard
-
Adds a shard replica set to a sharded cluster.
TipIn
mongosh
, this command can also be run through thesh.addShard()
helper method.Helper methods are convenient for
mongosh
users, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.
Syntax
The command has the following syntax:
db.adminCommand(
{
addShard: "<replica_set>/<hostname><:port>",
name: "<shard_name>"
}
)
Command Fields
The command contains the following fields:
Field | Type | Description |
---|---|---|
addShard | string | The replica set name, hostname, and port of at least one member of the shard's replica set. Any additional replica set member hostnames must be comma separated. For example:
<replica_set>/<hostname><:port>,<hostname><:port>, ... |
name | string | Optional. A name for the shard. If this is not specified, MongoDB automatically provides a unique name. |
The addShard
command stores shard configuration information in the config database. Always run addShard
when using the admin
database.
Considerations
Balancing
When you add a shard to a sharded cluster, you affect the balance of chunks among the shards of a cluster for all existing sharded collections. The balancer will begin migrating chunks so that the cluster will achieve balance. See Balancer Internals for more information.
Hidden Members
You cannot include a hidden member in the seed list provided to addShard
.
Examples
The following command adds a replica set as a shard:
use admin
db.runCommand( { addShard: "repl0/mongodb3.example.net:27327"} )
Do not use localhost
for the hostname unless your config server is also running on localhost
.