Yii2连接mongo权限问题 [ 2.0 版本 ]
MongoDB Exception – yii\mongodb\Exception
Authentication failed.
↵
Caused by: MongoDB\Driver\Exception\AuthenticationException
Authentication failed.
in /mnt/hgfs/Server/logistics/vendor/yiisoft/yii2-mongodb/Command.php at line 240
1. in /mnt/hgfs/Server/logistics/vendor/yiisoft/yii2-mongodb/Command.php at line 245
2. in /mnt/hgfs/Server/logistics/vendor/yiisoft/yii2-mongodb/Command.php at line 496 – yii\mongodb\Command::executeBatch('customer', [])
xitehip 补充于 2016-07-26 17:32
在 web.php中
'mongodb' => [
'class' => '\yii\mongodb\Connection',
'dsn' => 'mongodb://eva:111111@127.0.0.1:27017/logistics',
],
共 2 个回答
-
权限问题,这里的权限是指mongoDB的权限,也就是你给的用户名密码
eva:111111
无法操作你指定的数据库logistics
其原因在于,你建立的账号
eva
没有包含在数据库logistics
下。我猜你是把该账号建立在admin
数据库下了。当初建立账号时,你一定是如下执行的:
> use admin > db.createUser({ user:'eva', pwd:'111111', roles:[ role:'readWrite', db:'logistics' ] })
这样建立的用户是简历在
admin
数据库下的。你可以执行show users
查看到当前数据库下有哪些用户。解决这个问题,只需要切换到相应的数据库下,建立用户即可:
# 这一步是关键,切换到相应的数据库下 > use logistics # 下面是一样的 > db.createUser({ user:'eva', pwd:'111111', roles:[ role:'readWrite', db:'logistics' ] })
共 1 条回复
xitehip
注册时间:2014-09-11
最后登录:2016-08-07
在线时长:1小时3分
最后登录:2016-08-07
在线时长:1小时3分
- 粉丝0
- 金钱5
- 威望0
- 积分15