db.collection.renameCollection()
On this page
Definition
db.collection.renameCollection(target, dropTarget)
- Importantmongo Shell Method
This page documents the
mongo
shell method, and does not refer to the MongoDB Node.js driver (or any other driver) method. For corresponding MongoDB driver API, refer to your specific MongoDB driver documentation instead.Renames a collection. Provides a wrapper for the
renameCollection
database command.ParameterTypeDescriptiontarget
stringThe new name of the collection. Enclose the string in quotes. See Naming Restrictions.dropTarget
booleanOptional. Iftrue
,mongod
drops thetarget
ofrenameCollection
prior to renaming the collection. The default value isfalse
.
Behavior
The db.collection.renameCollection()
method operates within a
collection by changing the metadata associated with a given collection.
Refer to the documentation renameCollection
for additional
warnings and messages.
The db.collection.renameCollection()
method and
renameCollection
command will invalidate open cursors
which interrupts queries that are currently returning data.
For Change Streams, the
db.collection.renameCollection()
method and
renameCollection
command create an
invalidate
Event for any existing
Change Streams opened on the source or target collection.
The method has the following limitations:
db.collection.renameCollection()
cannot move a collection between databases. UserenameCollection
for these rename operations.db.collection.renameCollection()
is not supported on sharded collections.- You cannot rename views.
Resource Locking
Changed in version 4.2.
renameCollection()
obtains an exclusive lock on
the source and target collections for the duration of the operation. All
subsequent operations on the collections must wait until
renameCollection()
completes. Prior to MongoDB
4.2, renaming a collection within the same database with
renameCollection
required obtaining an exclusive database
lock.
Interaction with mongodump

A mongodump
started with
--oplog
fails if a client issues
db.collection.renameCollection()
during the dump process. See
mongodump.--oplog
for more information.
Example
Call the db.collection.renameCollection()
method on a
collection object. For example:
db.rrecord.renameCollection("record")
This operation will rename the rrecord
collection to record
. If
the target name (i.e. record
) is the name of an existing collection,
then the operation will fail.