mongodb分片环境开启认证

1.生成keyfile
openssl rand -base64 741 > /var/mongo/mongodb-keyfile
chmod 600 mongodb-keyfile
2.把keyfile copy到其他节点并修改权限
3.修改配置文件
添加:
keyFile=/var/mongo/mongodb-keyfile
4.重新启动mongodb使认证生效
use admin
db.shutdownServer()
5.连接到mongos 添加用户
use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "root001",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
db.createUser( {
user: "siteRootAdmin",
pwd: "root001",
roles: [ { role: "root", db: "admin" } ]
});


创建用户报错
mongos> db.createUser(
... {
... user: "myUserAdmin",
... pwd: "root001",
... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
... }
... )
2016-02-29T10:58:31.051+0800 E QUERY    [thread1] Error: couldn't add user: clock skew of the cluster 192.168.1.74:50000,192.168.1.69:50000,192.168.1.63:50000 is too far out of bounds to allow distributed locking. :
_getErrorWithCode@src/mongo/shell/utils.js:23:13
DB.prototype.createUser@src/mongo/shell/db.js:1225:11
@(shell):1:1
原因是由于各个节点时间不一致导致的,开启服务器的ntp服务同步时间
ntpdate -u 0.centos.pool.ntp.org
时间一致后再次创建用户,问题解决
创建特定数据库的用户
db.createUser(
{
user: "productsDBAdmin",
pwd: "password",
roles:
[
{
role: "dbOwner",
db: "wangwei"
}
]
}
)
认证
db.auth("productsDBAdmin","password")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值