Docs HomeMongoDB Manual

sh.startBalancer()

On this page

Definition

sh.startBalancer(timeout, interval)

Changed in version 6.1.

Starts the balancer in a sharded cluster.

Starting in MongoDB 6.1, automatic chunk splitting is not performed. This is because of balancing policy improvements. Auto-splitting commands still exist, but do not perform an operation. For details, see Balancing Policy Changes.

In MongoDB versions earlier than 6.1, sh.startBalancer() also enables auto-splitting for the sharded cluster.

Important

mongosh Method

This page documents a mongosh method. This is not the documentation for database commands or language-specific drivers, such as Node.js.

For the database command, see the balancerStart command.

For MongoDB API drivers, refer to the language-specific MongoDB driver documentation.

For the legacy mongo shell documentation, refer to the documentation for the corresponding MongoDB Server release:

The method can take the following options:

ParameterTypeDescription
timeoutintegerOptional. Time limit for enabling the balancer.
Defaults to 60000 milliseconds.
intervalintegerOptional. The frequency (in milliseconds) at which to check if a balancing round has started.

You can only run sh.startBalancer() on a mongos instance. sh.startBalancer() errors if run on mongod instance.

Behavior

The mongosh shell method sh.startBalancer() is a wrapper around the balancerStart command. As such, the method does not wait for balancing to start.

In earlier versions, the method waited for the balancing to start.