mongodb设置auth认证
最近在linux环境中使用mongodb+node项目时,积累心得。
mongo服务启动
(需要认证)
/alidata/server/mongodb/mongodb-linux-x86_64-amazon-3.4.4/bin/mongod --dbpath=/alidata/server/mongodb/data --
logpath=/alidata/server/mongodb/logs --logappend --auth --port=27017 --fork
(不需要认证)
/alidata/server/mongodb/mongodb-linux-x86_64-amazon-3.4.4/bin/mongod --dbpath=/alidata/server/mongodb/data --
logpath=/alidata/server/mongodb/logs --logappend --port=27017 --fork
创建账户:
谨记:先在不开启认证的情况下,创建用户,之后关闭服务,然后再开启认证,才生效。
db.createUser({
user:'root',
pwd:'root',
customData:{description:"管理员root"},
roles:[{
'role':'root',
'db':'admin'
}]
})
db.createUser({
user:'user2',
pwd:'user2',
customData:{description:"数据库账户描述"},
roles:[{
'role':'readWrite',
'db':'demo2'
}]
})
登录认证:
> db.auth("root","123456")
查询已添加的用户:
> db.system.users.find()
linuc查看进程状态,进程号
ps -ef | grep pmon
根据进程号,杀死对应进程
kill 12345
检查是否启动了进程:
ps aux | grep mongod
linux下启动启动客户端shell命令(以在bin目录下为例):
./mongo
启动node项目,关闭退出终端,node服务依然运行
nohup npm start > demo.log 2>&1 &