Definition
sh.startBalancer(timeout, interval)Changed in version 4.2.
Starts the balancer in a sharded cluster. Starting in MongoDB 4.2,
sh.startBalancer()also enables auto-splitting for the sharded cluster.Important
mongosh Method
This page documents a
mongoshmethod. This is not the documentation for database commands or language-specific drivers, such as Node.js.For the database command, see the
balancerStartcommand.For MongoDB API drivers, refer to the language-specific MongoDB driver documentation.
The method can take the following options:
ParameterTypeDescriptiontimeoutinteger
Optional. Time limit for enabling the balancer.
Defaults to 60000 milliseconds.
Changed in version 3.4: If using the 3.4
mongoshell with earlier version sharded clusters, the parameter specifies the amount of time to wait for the balancing round to start.intervalinteger
Optional. The frequency (in milliseconds) at which to check if a balancing round has started.
Changed in version 3.4: Only applicable when using version 3.4
mongoshell with earlier version sharded clusters.sYou can only run
sh.startBalancer()on amongosinstance.sh.startBalancer()errors if run onmongodinstance.
Compatibility
This method is available in deployments hosted in the following environments:
MongoDB Atlas: The fully managed service for MongoDB deployments in the cloud
Important
This command is not supported in M0, M2, and M5 clusters. For more information, see Unsupported Commands.
MongoDB Enterprise: The subscription-based, self-managed version of MongoDB
MongoDB Community: The source-available, free-to-use, and self-managed version of MongoDB
Behavior
Starting in MongoDB 3.4, the mongo 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.