Remarks
- Data in the world started to grow tremendously after mobile application came in the market. This huge amount of data became almost impossible to handle with traditional relational database - SQL. NoSQL databases are introduced to handle those data where much more flexibility came like variable number of columns for each data.
- MongoDB is one of the leading NoSQL databases. Each collection contains a number of JSON documents. Any data model that can be expressed in a JSON document can be easily stored in MongoDB.
- MongoDB is a server-client database. Server usually runs with the binary file
mongod
and client runs withmongo
. - There is no join operation in MongoDB prior to v.3.2, for various philosophical and pragmatic reasons. But Mongo shell supports javascript, so if $lookup is not available, one can simulate join operations on documents in javascript before inserting.
- To run an instance in production environment, it's strongly advised to follow the Operations Checklist.
What’s New in 3.4. For key new features of 3.4, see What’s New. To upgrade, refer to the Upgrade Considerations documentation. For the synchronous MongoDB Driver, see MongoDB Driver section. MongoDB Async Driver. For the new asynchronous MongoDB Async Driver, the MongoDB Async Driver section.
Versions
Version | Release Date |
---|---|
3.4 | 2016-11-29 |
3.2 | 2015-12-08 |
3.0 | 2015-03-03 |
2.6 | 2014-04-08 |
2.4 | 2013-03-19 |
2.2 | 2012-08-29 |
2.0 | 2011-09-12 |
1.8 | 2011-03-16 |
1.6 | 2010-08-31 |
1.4 | 2010-03-25 |
1.2 | 2009-12-10 |
Mongodb Download Free
Installation
To install MongoDB, follow the steps below:
For Mac OS:
- There are two options for Mac OS: manual install or homebrew.
- Installing with homebrew:
- Type the following command into the terminal:
- Installing manually:
Download the latest release here. Make sure that you are downloading the appropriate file, specially check whether your operating system type is 32-bit or 64-bit. The downloaded file is in format
tgz
.Go to the directory where this file is downloaded. Then type the following command:
Instead of
xyz
, there would be some version and system type information. The extracted folder would be same name as thetgz
file. Inside the folder, their would be a subfolder namedbin
which would contain several binary file along withmongod
andmongo
.By default server keeps data in folder
/data/db
. So, we have to create that directory and then run the server having the following commands:To start the server, the following command should be given from the current location:
It would start the server on port 27017 by default.
To start the client, a new terminal should be opened having the same directory as before. Then the following command would start the client and connect to the server.
By default it connects to the
test
database. If you see the line likeconnecting to: test
. Then you have successfully installed MongoDB. Congrats! Now, you can test Hello World to be more confident.
For Windows:
Download the latest release here. Make sure that you are downloading the appropriate file, specially check whether your operating system type is 32-bit or 64-bit.
The downloaded binary file has extension
exe
. Run it. It will prompt an installation wizard.Click Next.
Accept the licence agreement and click Next.
Select Complete Installation.
Click on Install. It might prompt a window for asking administrator's permission. Click Yes.
After installation click on Finish.
Now, the mongodb is installed on the path
C:/Program Files/MongoDB/Server/3.2/bin
. Instead of version 3.2, there could be some other version for your case. The path name would be changed accordingly.bin
directory contain several binary file along withmongod
andmongo
. To run it from other folder, you could add the path in system path. To do it:- Right click on My Computer and select Properties.
- Click on Advanced system setting on the left pane.
- Click on Environment Variables... under the Advanced tab.
- Select Path from System variables section and click on Edit....
- Before Windows 10, append a semi-colon and paste the path given above. From Windows 10, there is a New button to add new path.
- Click OKs to save changes.
Now, create a folder named
data
having a sub-folder nameddb
where you want to run the server.Start command prompt from their. Either changing the path in cmd or clicking on Open command window here which would be visible after right clicking on the empty space of the folder GUI pressing the Shift and Ctrl key together.
Write the command to start the server:
It would start the server on port 27017 by default.
Open another command prompt and type the following to start client:
By default it connects to the
test
database. If you see the line likeconnecting to: test
. Then you have successfully installed MongoDB. Congrats! Now, you can test Hello World to be more confident.
For Linux: Almost same as Mac OS except some equivalent command is needed.
- For Debian-based distros (using
apt-get
):Import MongoDB Repository key.
Add repository to package list on Ubuntu 16.04.
on Ubuntu 14.04.
Update package list.
Install MongoDB.
- For Red Hat based distros (using
yum
):use a text editor which you prefer.
$ vi /etc/yum.repos.d/mongodb-org-3.4.repo
Paste following text.
Update package list.
Install MongoDB
- For Debian-based distros (using
Hello World
After installation process, the following lines should be entered in mongo shell (client terminal).
Hello World!
Explanation:
- In the first line, we have inserted a
{ key : value }
paired document in the default databasetest
and in the collection namedworld
. - In the second line we retrieve the data we have just inserted. The retrieved data is kept in a javascript variable named
cur
. Then by thenext()
function, we retrieved the first and only document and kept it in another js variable namedx
. Then printed the value of the document providing the key.
Complementary Terms
SQL Terms | MongoDB Terms |
---|---|
Database | Database |
Table | Collection |
Entity / Row | Document |
Column | Key / Field |
Table Join | Embedded Documents |
Primary Key | Primary Key (Default key _id provided by mongodb itself) |
Execution of a JavaScript file in MongoDB
Explanation: This operation executes the myjsfile.js
script in a mongo
shell that connects to the mydb
database on the mongod
instance accessible via the localhost
interface on port 27017
. localhost:27017
is not mandatory as this is the default port mongodb
uses.
Also, you can run a .js
file from within mongo
console.
Making the output of find readable in shell
We add three records to our collection test as:
If we see them via find, they will look very ugly.
To work around this and make them readable, use the pretty() function.
Basic commands on mongo shell
Show all available databases:
Select a particular database to access, e.g. mydb
. This will create mydb
if it does not already exist:
Show all collections in the database (be sure to select one first, see above):
Show all functions that can be used with the database:
To check your currently selected database, use the command db
db.dropDatabase()
command is used to drop a existing database.
MongoDB Java Driver Documentation
Mongodb Download Center
Welcome to the MongoDB Java driver documentation hub for the 3.4 driver release.
What’s New in 3.4
For key new features of 3.4, see What’s New.
Upgrade
Download Mongodb 3.4 For Mac Catalina
To upgrade, refer to the Upgrade Considerations documentation.
Mongodb Download Page
MongoDB Driver
For the synchronous MongoDB Driver, see MongoDB Driver section.
MongoDB Async Driver
For the new asynchronous MongoDB Async Driver, the MongoDB Async Driver section.
BSON Library
Download Mongodb 3.4 For Mac High Sierra
The BSON library comprehensively supports the BSON spec, the data storage and network transfer format that MongoDB uses for“documents”. The reference guide provides information about working with Documents,how to use Codecs and Extended JSON support.