我使用的是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操作,自行百度