mongosh
Usage
On this page
To run commands in mongosh
, you must first
connect to a MongoDB deployment.
Switch Databases
To display the database you are using, type db
:
db
The operation should return test
, which is the default database.
To switch databases, issue the use <db>
helper, as in the
following example:
use <database>
To access a different database from the current database without
switching your current database context, see the
db.getSiblingDB()
method.
To list the databases available to the user, use the helper show
dbs
.
Create a New Database and Collection
To create a new database, issue the use <db>
command with the
database that you would like to create. For example, the following
commands create both the database myNewDatabase
and the
collection myCollection
using the
insertOne()
operation:
use myNewDatabase db.myCollection.insertOne( { x: 1 } );
If a collection does not exist, MongoDB creates the collection when you first store data for that collection.
Insert Data into a Collection
The db.myCollection.insertOne()
is one
of the methods available in mongosh.
db
refers to the current database.myCollection
is the name of the collection.
If mongosh
does not accept the name of a collection,
you can use the alternative db.getCollection()
syntax.
For instance, if a collection name contains a space or hyphen, starts
with a number, or conflicts with a built-in function:
db.getCollection("3 test").find() db.getCollection("3-test").find() db.getCollection("stats").find()
For more documentation of basic MongoDB operations in mongosh
, see:
.mongoshrc.js
File
On startup, mongosh
checks the user's HOME
directory for
a JavaScript file named .mongoshrc.js. If this
file is found, mongosh
reads the content of
.mongoshrc.js before displaying the prompt for
the first time.
If you use mongosh
to evaluate a JavaScript file or
expression, either by using the --eval
option on the command line or by specifying a .js file, mongosh
reads .mongoshrc.js after the JavaScript has finished processing. You can
prevent .mongoshrc.js from being loaded by using
the --norc
option.
The legacy mongo
shell used a configuation file
called .mongorc.js
. If mongosh
detects this file on
startup, and .mongoshrc.js is not present,
mongosh
will suggest renaming .mongorc.js
to
.mongoshrc.js.
The legacy .mongorc.js
file is not loaded.
Terminate a Running Command
To terminate a running command or query in mongosh
,
press Ctrl + C
.
When you enter Ctrl + C
, mongosh
:
- interrupts the active command,
- tries to terminate the ongoing, server-side operation, and
- returns a command prompt.
If mongosh
cannot cleanly terminate the running process,
it issues a warning.
Pressing Ctrl + C
once will not exit mongosh
, press
Ctrl + C
twice to exit mongosh
.
Command Exceptions
In scenarios where the output of a command includes { ok: 0 }
,
mongosh
throws an exception and does not return the raw output from
the server.
In the legacy mongo
shell, when a command's output included {
ok: 0 }
, the behavior differs between commands. mongosh
provides consistent behavior by always throwing an exception in these
scenarios.
Clear the mongosh
Console
The cls
command clears the console. You can also clear the console
with Ctrl + L
and console.clear()
.