1 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz # 下載
2 tar -zxvf mongodb-linux-x86_64-3.0.6.tgz # 解壓
3 mv mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb-3.0.6 # 將解壓包拷貝到指定目錄
4 ln -s /usr/local/mongodb-3.0.6/ /usr/local/mongodb # 建立軟連接5 export PATH=/usr/local/mongodb:/bin:$PATH # 添加PATH變量6 mkdir -p /data/mongo_db #建立數據庫目錄(啓動指定--dbpath,或寫於配置文件)
[root@vm-centos7 bin]# mkdir /usr/local/mongodb/etc/
[root@vm-centos7 bin]# cat /usr/local/mongodb/etc/mongod.conf
#數據庫數據存放目錄
dbpath=/data/mongo_db/
#數據庫日誌存放目錄
logpath=/var/log/mongodb/mongo.log
#以追加的方式記錄日誌
logappend = true
#端口號 默認爲27017
port=27017
#之後臺方式運行進程
fork=true
#開啓用戶認證
auth=true
#關閉http接口,默認關閉http端口訪問
nohttpinterface=false
#mongodb所綁定的ip地址
#bind_ip = 127.0.0.1
bind_ip = 0.0.0.0
#啓用日誌文件,默認啓用
journal=true
#這個選項能夠過濾掉一些無用的日誌信息,若須要調試使用請設置爲false
quiet=true
mongod -f /usr/local/mongodb/etc/mongod.conf
[root@vm-centos7 bin]# mongo
MongoDB shell version: 3.0.6
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
>
>
>
> use admin
switched to db admin
> db
admin
> db.createUser({user:'linxu',pwd:'123456',roles:[{role:'userAdminAnyDatabase',db:'admin'}]})
Successfully added user: {
"user" : "linxu",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
>
> exit
bye
# 命令行測試
mongo -ulinxu -p '123456' 127.0.0.1:27017/admin
# mongo內部測試
[root@vm-centos7 bin]# mongo
MongoDB shell version: 3.0.6
connecting to: test
>
>
> db
test
>
> show dbs
2017-05-20T00:20:02.610+0800 E QUERY Error: listDatabases failed:{
"ok" : 0,
"errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }",
"code" : 13
}
at Error (<anonymous>)
at Mongo.getDBs (src/mongo/shell/mongo.js:47:15)
at shellHelper.show (src/mongo/shell/utils.js:630:33)
at shellHelper (src/mongo/shell/utils.js:524:36)
at (shellhelp2):1:1 at src/mongo/shell/mongo.js:47
>
> use admin
switched to db admin
>
> db
admin
>
> show dbs
2017-05-20T00:20:13.923+0800 E QUERY Error: listDatabases failed:{
"ok" : 0,
"errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }",
"code" : 13
}
at Error (<anonymous>)
at Mongo.getDBs (src/mongo/shell/mongo.js:47:15)
at shellHelper.show (src/mongo/shell/utils.js:630:33)
at shellHelper (src/mongo/shell/utils.js:524:36)
at (shellhelp2):1:1 at src/mongo/shell/mongo.js:47
>
> db
admin
>
> db.auth('linxu','123456')
1
>
> show dbs
admin 0.078GB
local 0.078GB
[root@vm-centos7 bin]# mongo -ulinxu -p '123456' 127.0.0.1:27017/admin
MongoDB shell version: 3.0.6
connecting to: 127.0.0.1:27017/admin
>
>
> db
admin
>
> show dbs
admin 0.078GB
local 0.078GB
>
> use mydb
switched to db mydb
>
> db
mydb
>
> db.createUser({user:'nick',pwd:'123456',roles:[{role:'readWrite',db:'mydb'}]})
Successfully added user: {
"user" : "nick",
"roles" : [
{
"role" : "readWrite",
"db" : "mydb"
}
]
}
>
> db.auth('nick','123456')
1
>
> use admin
switched to db admin
>
> db
admin
>
> db.auth('linxu','123456')
1
>
> db.system.users.find()
{ "_id" : "admin.linxu", "user" : "linxu", "db" : "admin", "credentials" : { "SCRAM-SHA-1" : { "iterationCount" : 10000, "salt" : "G1odVR9h/KMPQrOm/OgoXA==", "storedKey" : "IxV+sHbetC0D6y6o8nu+QuI81MQ=", "serverKey" : "07e+MxR1ZEM5BwsfKKLa5S6bIc4=" } }, "roles" : [{ "role" : "userAdminAnyDatabase", "db" : "admin" } ] }
{ "_id" : "mydb.nick", "user" : "nick", "db" : "mydb", "credentials" : { "SCRAM-SHA-1" : { "iterationCount" : 10000, "salt" : "q4/PoG2mrvBNc0WV7HIuyA==", "storedKey" : "TDKzZyJasK2D0xlRwlmewl87NQA=", "serverKey" : "lphcSnGgYUHMgBQ2aY+H8U7DAIk=" } }, "roles" : [ { "role" : "readWrite", "db" : "mydb" } ] }
>
>