您的位置:首页 > 数据库 > Mongodb

CentOS7安装mongodb

2017-01-08 15:29 309 查看
1、下载 

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.8.tgz

2、解压 

tar zxvf mongodb-linux-x86_64-rhel70-3.2.8.tgz 

mv mongodb-linux-x86_64-rhel70-3.2.8 /usr/local/ 

mv mongodb-linux-x86_64-rhel70-3.2.8 mongodb 

cd mongodb/

mkdir db 

mkdir logs 

cd bin/ 

3、编辑配置文件: 

vim mongodb.conf 

输入以下内容: 

dbpath=/usr/local/mongodb/db 

logpath=/usr/local/mongodb/logs/mongodb.log 

bind_ip=0.0.0.0 

port=27017 

fork=true 

nohttpinterface=true

4、创建新的账号: 

groupadd mongodb 

useradd mongodb -g mongodb 

cd ../../ 

chown -R mongodb:mongodb mongodb

5、启动: 

/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf

6、设置开机自动启动mongodb 

vi /etc/rc.d/rc.local 

/usr/local/mongodb/bin/mongod –config /usr/local/mongodb/bin/mongodb.conf

进入mongodb的shell模式: 

/usr/local/mongodb/bin/mongo 

查看数据库列表: 

show dbs 

查看当前db版本: 

db.version();

7、增加管理员权限:

userAdminAnyDatabase 这个角色拥有分配角色和用户的权限,但没有查写的缺陷 

root 这是超级管理员 

readWrite 有读写权限 

read 有读权限

进入shell模式: 

/usr/local/mongodb/bin/mongo

use admin //切换到admin数据库

db.createUser( 



user: “root”, 

pwd: “testMongoDB2016”, 

roles:[{role:”root”, db:”admin”}] 



);

db.createUser( 



user: “mongoRoot”, 

pwd: “testMongoDB2016”, 

roles:[{role:”userAdminAnyDatabase”, db:”admin”}] 



); 

验证一下,在哪里注册用户的要去哪个db里认证: 

db.auth(“mongoRoot”, “testMongoDB2016”) 

此后可以用这个mongoRoot账号去创建某一数据库管理账号: 

db.createUser({user:”hhq163”,pwd:”test123456”,roles:[{“role”:”readWrite”,”db”:”admin”}]})

但发现此时增加的账号不能在客户端登录,原因是mongodb版本错了: 

先退出 mongod 服务

use admin 

db.auth(“root”, “testMongoDB2016”) 

db.shutdownServer() 

再在无认证情况下打开 mongod 

use admin 

db.dropUser(“hhq163”) 

db.system.version.update({ “_id”:”authSchema”},{$set:{“currentVersion”:3}}) 

db.createUser({user:”hhq163”,pwd:”test123456”,roles:[{“role”:”readWrite”,”db”:”admin”}]}) 

再以认证的形式启动mongodb

如果需要创建某一个新DB的账号: 

需要在shell下执行: 

use TestDB 

db.createUser({user:”hhq163”,pwd:”test123456”,roles:[{“role”:”readWrite”,”db”:”TestDB”}]})

vim /usr/local/mongodb/bin/mongodb.conf 

在文件末尾增加以下这一行: 

auth=true

8、关闭数据库服务器: 

use admin 

db.shutdownServer()

如果开户安全认证,则要先认证: 

use admin 

db.auth(“root”, “testMongoDB2016”) 

db.shutdownServer()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: