MongoDB Connection
Check db server:
$ service mongod status
Run db server:
$ sudo service mongod start
$ service mongod status
...
Active: active (running)
Getting Started with the mongo Shell
Start the mongo Shell:
$ mongo
// To display the database you are using:
$ MongoDB> db
test
// Print help
$ MongoDB> help
// Exit mongo shell
$ MongoDB> exit
$
db.help() help on db methods db.mycoll.help() help on collection methods sh.help() sharding helpers rs.help() replica set helpers help admin administrative help help connect connecting to a db help help keys key shortcuts help misc misc things to know help mr mapreduce show dbs show database names show collections show collections in current database show users show users in current database show profile show most recent system.profile entries with time >= 1ms show logs show the accessible logger names show log [name] prints out the last segment of log in memory, 'global' is > default use <db_name> set current database db.foo.find() list objects in collection foo db.foo.find( { a : 1 } ) list objects in foo where a == 1 it result of the last line evaluated; use to further iterate DBQuery.shellBatchSize = x set default number of items to display on shell exit quit the mongo shell MongoDB Enterprise >
To switch databases, issue the
use <db>
How to create a MongoDB database
http://theholmesoffice.com/how-to-create-a-mongodb-database/
With MongoDB you create a database the first time you save data into it.
$ mongo
mongo> show dbs
admin 0.000GB
local 0.000GB
>
>
Step 1. “Use
” the database you wish to create:
rather than explicitly creating a database, MongoDB will
create a database when it first has data saved to
.In order to save data, we need to connect to our new database
even though it doesn’t exist yet
.
// new database: `ts-mean-test`
mongo> use ts-mean-test
>
the database hasn’t been created yet.
Step 2. Insert some data into the ts-mean-test
database:
there are no
tables
,rows
orcolumns
.
In their place, MongoDB usescollections
andobjects
. Think ofcollections
as tables, andobjects
as table rows.
mongo> db
ts-mean-test
// new collection: `teams`
> db.teams.save({Country:"Korea",GroupName:"Codebits.Design"})
>
> show dbs
admin 0.000GB
local 0.000GB
ts-mean-test 0.000GB
>
>
That will create a new collection called “
teams
”, and save an object with two fields “Country
” and “GroupName
”. Crucially, this will now also save our database.
Check that it has been created by runningshow dbs
again.
Step 3. testing by reading the data back out:
mongo> show collections
teams
>
> db.teams.find()
{ "_id" : ObjectId("5902ef7eeeffb94cf18735d4"), "Country" : "Korea", "GroupName" : "Codebits.Design" }
>
>
- A
database
holds a set of collections- A
collection
holds a set of documents- A
document
is a set of fields- A
field
is a key-value pair- A
key
is a name (string)- A
value
is a – basic type like string, integer, float, timestamp, binary, etc., a document, or an array of values
How to create a MongoDB accout user
show users
: Print a list of users for current database.db.createUser(user, writeConcern)
: Creates a new user.
Create User with Roles :
https://docs.mongodb.com/v3.0/reference/method/db.createUser/#db.createUser
The following operation creates mongoUser
in the ts-mean-test
database and gives the user the readWrite
and dbAdmin
roles.
mongo> use ts-mean-test
>
> db.createUser(
{
user: "mongoUser",
pwd: "password",
roles: [ "readWrite", "dbAdmin" ]
}
)
>
>
Show the account users of ts-mean-test
database:
mongo> use ts-mean-test
>
> show users
{
"_id" : "ts-mean-test.mongoUser",
"user" : "mongoUser",
"db" : "ts-mean-test",
"roles" : [
{
"role" : "readWrite",
"db" : "ts-mean-test"
},
{
"role" : "dbAdmin",
"db" : "ts-mean-test"
}
]
}
>
> exit
$
Connect ts-mean-test
database with mongoUser
account:
$ mongo ts-mean-test -u mongoUser -p
Enter password:
mongo> db
ts-mean-test
>
>