安装、配置mongodb密码等以及导入mongodb的的表,数据,索引。Exception 'yii\mongodb\Exception' with message 'Authentication failed.'

技术分享 · resetl · 于 5年前 发布 · 2150 次阅读

我使用的是composer部署网站的办法,所以在基础环境构建之初会有很多小问题,在这记录一次mongodb的错误。

安装Mongodb

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.5.tgz
tar zxvf mongodb-linux-x86_64-rhel70-3.6.5.tgz 
cd mongodb-linux-x86_64-rhel70-3.6.5
mkdir /usr/local/mongodb
mv * /usr/local/mongodb

在mongodb目录下面,创建data目录,并在data目录下创建logs

cd /usr/local/mongodb/
mkdir data
cd data
touch logs

在mongodb/data目录下 创建 my.conf 文件

vi /usr/local/mongodb/data/my.conf

加入以下内容:

#端口号
port = 27017
#数据目录
dbpath = /usr/local/mongodb/data
#日志目录
logpath = /usr/local/mongodb/data/logs
#设置后台运行
fork = true
#日志输出方式
logappend = true
#开启认证
#auth = true

启动mongodb服务

cd /usr/local/mongodb
./bin/mongod --config /usr/local/mongodb/data/my.conf

设置开机启动(这一步是为了让以下命令生效)

service mongod restart | start | stop
 vim /etc/rc.d/init.d/mongod

写入以下文件(注意:$符号为#)

$!/bin/bash
$$
$chkconfig: 2345 80 90
$description
start(){
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/data/my.conf &
}


stop(){
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/data/my.conf --shutdown;rm -rf /usr/local/mongodb/data/mongod.lock
}


case "$1" in
start)
start
;;



stop)
stop
;;


restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac
 对mongod添加权限
 ```
 chmod 755 /etc/rc.d/init.d/mongod

添加服务

chkconfig --add mongod
chkconfig mongod on

mongodb设置账户

cd /usr/local/mongodb/bin
./mongo
use admin

设置管理员账户

db.createUser(
  {
    user: "admin",
    pwd: "密码",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)
 db.auth("admin","AmJuQ5MvTOKK5pn!$trd")

创建fecshop以及用户

use fecshop
db.createUser(
  {
    user: "simpleUser",
    pwd: "simplePass",
    roles: [ { role: "readWrite", db: "fecshop"} ]
  }
)
db.auth("simpleUser","simplePass")

返回值为1,表示正常

如果需修改密码

db.changeUserPassword('用户名','密码'); 

出现题目上的错误是因为main.local.php的配置问题,我之前配置的是admin的,所以会出现报错 在mongodb下创建数据库,如果数据库为空不会显示

关于更多的mongodb操作,自行百度

共收到 2 条回复 技术分享
Fecmall#15年前 0 个赞

分享贴,见一个赞一个👍

Fecmall#25年前 0 个赞

帖子回复完了😊,出去玩

添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
Your Site Analytics