Difference between revisions of "MongoDB"
Jump to navigation
Jump to search
Rafahsolis (talk | contribs) (→Query) |
Rafahsolis (talk | contribs) |
||
| Line 63: | Line 63: | ||
Equivalent sql where clause is 'where likes>10 AND (by = 'tutorials point' OR title = 'MongoDB Overview')' | Equivalent sql where clause is 'where likes>10 AND (by = 'tutorials point' OR title = 'MongoDB Overview')' | ||
db.mycol.find({"likes": {$gt:10}, $or: [{"by": "tutorials point"}, {"title": "MongoDB Overview"}]}).pretty() | db.mycol.find({"likes": {$gt:10}, $or: [{"by": "tutorials point"}, {"title": "MongoDB Overview"}]}).pretty() | ||
| + | |||
| + | == Security == | ||
| + | To enable Client Access Control follow this steps: | ||
| + | # Connect to the mongo instance without access control | ||
| + | mongo --port 27017 | ||
Revision as of 15:46, 25 February 2016
Installation
Ubuntu 14.04
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list sudo apt-get update sudo apt-get install -y mongodb-org # Specific version install: sudo apt-get install -y mongodb-org=3.2.1 mongodb-org-server=3.2.1 mongodb-org-shell=3.2.1 mongodb-org-mongos=3.2.1 mongodb-org-tools=3.2.1
Start/Stop/Restart MongoDB
sudo service mongod start | stop | restart
Verify that MongoDB has started successfully
Verify that the mongod process has started successfully by checking the contents of the log file at /var/log/mongodb/mongod.log for a line reading
[initandlisten] waiting for connections on port <port>
Guides
Getting Started
Before deploying MongoDB in a production environment
Manage user accounts and roles
Data directories
/var/log/mongodb /var/lib/mongodb
Create Database
use DATABASE_NAME
Show databases
show dbs
db.adminCommand('listDatabases')
db.getMongo().getDBNames()
- To view databases they must have data
To show the current database type:
db
Insert
db.COLLECTION_NAME.insert({"name":"data1"})
Get Colection Names
db.getCollectionNames()
Query
db.COLLECTION_NAME.find()
db.COLLECTION_NAME.find({"name": "data1"})
RDBMS Where Clause Equivalents in MongoDB
| Operation | Syntax | Example | RDBMS Equivalent |
|---|---|---|---|
| Equality | {<key>:<value>} | db.mycol.find({"by":"tutorials point"}).pretty() | where by = 'tutorials point' |
| Less Than | {<key>:{$lt:<value>}} | db.mycol.find({"likes":{$lt:50}}).pretty() | where likes < 50 |
| Less Than Equals | {<key>:{$lte:<value>}} | db.mycol.find({"likes":{$lte:50}}).pretty() | where likes <= 50 |
| Greater Than | {<key>:{$gt:<value>}} | db.mycol.find({"likes":{$gt:50}}).pretty() | where likes > 50 |
| Greater Than Equals | {<key>:{$gte:<value>}} | db.mycol.find({"likes":{$gte:50}}).pretty() | where likes >= 50 |
| Not Equals | {<key>:{$ne:<value>}} | db.mycol.find({"likes":{$ne:50}}).pretty() | where likes != 50 |
AND / OR Example:
Likes greater than 100 and whose title is either 'MongoDB Overview' or by is 'tutorials point'.
Equivalent sql where clause is 'where likes>10 AND (by = 'tutorials point' OR title = 'MongoDB Overview')'
db.mycol.find({"likes": {$gt:10}, $or: [{"by": "tutorials point"}, {"title": "MongoDB Overview"}]}).pretty()
Security
To enable Client Access Control follow this steps:
- Connect to the mongo instance without access control
mongo --port 27017