工作积累--MongoDB的安装与配置及遇到过的问题

1.下载MongoDB
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz
2.解压缩
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz
3.安装MongDB
cd mongodb-linux-x86_64-3.0.6
mkdir data --存放数据
mkdir logs --存放日志
4.mongo配置文件
cd mongodb-linux-x86_64-3.0.6
新建文件: mongodb.conf
添加内容:
dbpath=/mongodb-linux-x86_64-3.0.6/data/
logpath=/mongodb-linux-x86_64-3.0.6/logs/mongodb.log
pidfilepath=/mongodb-linux-x86_64-3.0.6/mongo.pid
fork=true
logappend=true
shardsvr=true
directoryperdb=true
#auth=true
port= XXXX
bind_ip= 0.0.0.0
5.启动
./mongod --port 27017 --fork --dbpath=/mongodb-linux-x86_64-3.0.6/data/ --logpath=/mongodb-linux-x86_64-3.0.6/logs/mongodb.log --logappend
6.查看是否启动成功
ps -ef|grep mongo

netstat -lanp | grep “27017”
7.停止
ps -ef|grep mongo
kill 进程
8.进入数据库控制台
cd /bin
./mongo
9.创建数据库
use admin
db.createRole({
role:‘sysadmin’,roles:[],
privileges:[{
resource:{anyResource:true},
actions:[‘anyAction’]
}]
})
10.创建用户和授权
db.createUser({
user: “username”, pwd: “password”,
roles: [{
role: “userAdminAnyDatabase”, db: “admin” }]
})
//具有readWrite每一个数据库权限。但不包括应用到集群中的数据库
db.grantRolesToUser(“nems, [{role:“readWriteAnyDatabase”,db:“admin”}])
//提供了dbAdmin每一个数据库权限,但是不包括应用到集群中的数据库
db.grantRolesToUser(“nems”,
[{role:“dbAdminAnyDatabase”,db:“admin”}])
//像用户授予它的角色
db.grantRolesToUser(“nems”,[{role:“sysadmin”,db:“admin”}])
11.遇到过的问题
1):Web应用启动报错:
描述:如果出现用户名和密码都对的情况下,java连接还报认证失败,需要检查当前认证方式,mongo3.0以下版本值支持MONGODB-CR方式,无法改为SCRAM-SHA-1方式。
工作积累--MongoDB的安装与配置及遇到过的问题
解决:
查看认证方式
值为3表示:MONGODB-CR
值为5表示:SCRAM-SHA-1
认证方式修改如下:
db.system.users.remove({})
db.system.version.remove({})
db.system.version.insert({”_id":“authSchema”,“currentVersion”:5})