Cheat Sheet Mongodb



Best practices for designing MongoDB schemas for high performance systems at any scale, in one glanceable, printable document. A glanceable, shareable, printable, all-around useful collection of tips and patterns for developers using MongoDB, no matter the experience level. MongoDB is open-source, NoSQL database that stores data in a JSON-like document. It has highly flexible and dynamic data model which is faster, agile and scalable. It evolves to meet the need to manage the growing size and complexity of data. This post is all about MongoDB cheat sheet for quick reference. MySQL & MongoDB.

This article is about the default client for MongoDB: the MongoDB Mongo shell. In this article, we’ll:

(This article is part of our MongoDB Guide. Use the right-hand menu to navigate.)

What is the MongoDB Mongo shell?

MongoDB Mongo shell is an interactive JavaScript interface that allows you to interact with MongoDB instances through the command line. The shell can be used for:

  • Data manipulation
  • Administrative operations such as maintenance of database instances

MongoDB Mongo shell features

MongoDB Mongo shell is the default client for the MongoDB database server. It’s a command-line interface (CLI), where the input and output are all console-based. The Mongo shell is a good tool to manipulate small sets of data.

Here are the top features that Mongo shell offers:

  • Run all MongoDB queries from the Mongo shell.
  • Manipulate data and perform administration operations.
  • Mongo shell uses JavaScript and a related API to issue commands.
  • See previous commands in the mongo shell with up and down arrow keys.
  • View possible command completions using the tab button after partially entering a command.
  • Print error messages, so you know what went wrong with your commands.

MongoDB has recently introduced a new mongo shell known as mongosh. It has some additional features, such as extensibility and embeddability—that is, the ability to use it inside other products such as VS Code.

Installing the mongo shell

The mongo shell gets installed when you install the MongoDB server. It is installed in the same location as the MongoDB server binary.

If you want to install it separately, you can visit the MongoDB download center, from there select the version and package you need, download the archive, and copy it to a location in your file system.

Mongo shell is available for all main operating systems, including:

  • Windows
  • Linux
  • Mac OS

Connect to MongoDB database

Once you’ve downloaded and installed MongoDB, you can use the mongo shell to connect with a MongoDB server that is up and running.

Note: It is required that your server is already running before you connect with it through the shell. You can start the server in CMD using the following command.

Get more done with the new Google Chrome. A more simple, secure, and faster web browser than ever, with Google’s smarts built-in. Google Chrome is the most widely used web browser in the world. Users enjoy its fast loading speed, cross-device integration, and tabbed browsing. Google Chrome does not come installed as a. Google chrome macos big sur. It includes all the file versions available to download off Uptodown for that app. Download rollbacks of Google Chrome for Mac. Any version of Google Chrome distributed on Uptodown is completely virus-free and free to download at no cost. 89.0.4389.90 Mar 18th, 2021 88.0.4324.192 Feb 24th, 2021.

Then type mongo command to run the shell.

Now you are in the Mongo shell.

If you want, you can run the mongo and mongod without the command prompt. To do this, go to the installation location and double click on the mongod and mongo applications. You will get the same result as the above.

Different port

The above mongo command only works if your MongoDB server runs on the default port, which is 27017. If your MongoDB server runs on a different port, you have to explicitly specify it in the command, as shown below:

Remote server

Both of the above commands only work if your MongoDB server is running on the localhost. If you want to connect to a remote server, use the `–host` option with the mongo command, as shown below.

Basic commands for Mongo shell

Now it’s time to work with the Mongo shell. First, we will learn some basic commands that will help you to get started with using MongoDB.

Run the db command to see the database you are currently working with

Run the use command to switch to a different database. If you don’t have a database, learn how to create a new database.

You can create collections and insert data with the following command:

  • db refers to the current database in use.
  • employee is the collection name.
  • insertOne is the method to insert a document to the collection.

Use the find method to fetch data in a collection. The forEach(printjson) method will print them with JSON formatting


Use the show dbs command to Show all databases

One important command will help you work with the Mongo shell easily: the help command. Run the help command to get a list of help options available in the mongo shell.

To get a full list of commands that you can execute on the current database, type db.help()

We will discuss more data manipulation commands in coming tutorials. For a full list of commands, check out the official Mongo shell page.

Mongoose Cheat Sheet

Mongo shell keyboard shortcuts

There are two important keyboard shortcuts that you should know:

  1. Use up and down arrows to go back and forth in the commands history.
  2. Press the tab key to get a full list of possible commands. For example, type d and press tab twice. You will get the following output.

Disadvantages of the mongo shell

Although the Mongo shell is an excellent tool for learning and testing the MongoDB server, it is difficult to be used in a production environment. Being a shell inherently carries certain disadvantages. Let’s see what they are:

  • The Mongo shell is strictly a console centric method of data manipulation. While some find it easy and quick, others might not find those characteristics appealing.
  • If you are working on multiple sessions, you need multiple terminals.
  • If the results are too long, they scroll away.
  • Repetitive commands or debugging a function need the programmer to traverse the long command line history manually.

Alternatives to MongoDB mongo shell

So now you know the mongo shell has some disadvantages. At this point, you may want to know what other options are available. MongoDB developers have introduced drivers specific to each programming language to connect with the MongoDB databases when using MongoDB in your applications. You can find them here.

Additionally, many people prefer to use GUIs to work with databases nowadays. One of the best GUI tools for MongoDB is the MongoDB Compass. Macos mojave 10.14.6 18g103. Some other useful GUI tools are:

Remember that the best MongoDB GUI depends on the task that needs to be accomplished. MongoDB Compass is the go-to option if you need to avoid the command line completely. Robo 3T is simple and well supported by the community, while NoSQLBooster is shell centric smart GUI tool.

With that, we’ve reached the end of this tutorial. Now, play with the shell and get practice.

Additional resources

For more tutorials like this, explore these resources:

  • MongoDB Guide, a series of tutorials

As part of our MongoDB Guide, we’ve compiled this cheat sheet of common and not-so-common MongoDB commands.

(This article is part of our MongoDB Guide. Use the right-hand menu to navigate.)

Table of Contents

Pretty Print
Create Collection
Create Indexes
Create index
Create sparse index
Create compound index
Create geo index
Create partial index
Add and Delete Data
Add one data record
Add array (many) records
Delete data
Query MongoDB Documents
Search by attribute
Search by geolocation
Search greater or less than
Search not equal to
Search and return only certain fields
Search by regular expression
Find by elements in array
Replication and Sharding
Enable replication
Add shard
Show Server Memory
Aggregate functions
MapReduce

Pretty Print

Add pretty() to the end of any search:

Create Collection

Create Indexes

Create index

The format is {attribute : sortOrder} where sort order is -1 (descending) or 1 (ascending).

Create sparse index

This does not index documents that do not have this attribute.

Create compound index

Cheat

Create geo index

Create partial index

This indexes those documents that match the search criteria.

Add and Delete Data

Add one data record

Add array (many) records

Delete data

Query MongoDB Documents

Search by attribute

Search by geolocation

Search greater or less than

Search not equal to

Search and return only certain fields

This is called projection.

Show only the make field:

Show every field except the make field:

Search by regular expression

You can use the slash or quote marks as a delimiter.

Case insensitive:

Find by elements in array

This matches documents that contain all of these array elements:

Match on any element in the array:

Replication and Sharding

Enable replication

Mongodb Cheat Sheet C#

Connect to a config server then:

And then show replication status:

Add shard

Connect to query router (mongos) server. 27018 in this example is the port number of a shard server

Mongodb

Show Server Memory

Aggregate functions

This is the same as the SQL select count(*) from words group by word. This is the word count program.

MapReduce

You can do the same word count function using the map operation: