环境:
OS:Centos 7
db:4.4.13
1.下载相应的版本
https://www.mongodb.com/download-center/community
我这里下载的是mongodb-linux-x86_64-rhel70-4.4.13.tgz
2.创建安装目录
[root@test services]# mkdir -p /usr/local/services
[root@test services]# mkdir -p /home/middle/mongodb/data
[root@test services]# mkdir -p /home/middle/mongodb/log
[root@test services]# mkdir -p /home/middle/mongodb/key
[root@test services]# mkdir -p /home/middle/mongodb/conf
[root@test services]# mkdir -p /home/middle/mongodb/run
3.安装数据库
[root@test soft]# tar -xvf mongodb-linux-x86_64-rhel70-4.4.13.tgz
[root@test soft]# mv mongodb-linux-x86_64-rhel70-4.4.13 /usr/local/services/mongodb
4.创建配置文件
cd /home/middle/mongodb/conf
[hxl@zb-mongodb-80a9a4c-prd conf]$ more mongo.cnf
port=28001
fork=true
dbpath=/home/middle/mongodb/data
logpath=/home/middle/mongodb/log/mongodb.log
pidfilepath=/home/middle/mongodb/run/28001.pid
logappend=true
bind_ip=192.168.1.139,127.0.0.1
oplogSize=10000
logRotate=reopen
##auth=true 这里先不要启用,等创建好超级用户后再重启服务启用该参数
5.启动
/usr/local/services/mongodb/bin/mongod -f /home/middle/mongodb/conf/mongo.cnf
/usr/local/services/mongodb/bin/mongod -f /data/middle/mongodb/conf/mongo.cnf
7.登陆创建管理员账号
[root@localhost bin]# /usr/local/services/mongodb/bin/mongo 192.168.1.139:28001
use admin
db.createUser({user:"ymiao",pwd:"ymiao123",roles:["root"]}); --创建用户
db.auth("ymiao","ymiao123"); --设置用户登陆权限,密码一定要和创建用户时输入的密码相同
show users; --查看创建的用户
8.重启动服务
/usr/local/services/mongodb/bin/mongo localhost:28001
use admin
db.shutdownServer()
9.将之前注释掉的认证去掉注释后重启动服务
##auth=true 打开注释
重启动
/usr/local/services/mongodb/bin/mongod -f /data/middle/mongodb/conf/mongo.cnf
10.登陆
/usr/local/services/mongodb/bin/mongo localhost:28001
use admin
db.auth("ymiao","ymiao123");
创建dml普通账号
>use mgdb_message ##直接进入数据库
>db.createUser({user:'threedev',pwd:'threedev123',roles:[{role:'dbOwner',db:'mgdb_message'}]})
创建只读账号
>use mgdb_message ##直接进入数据库
>db.createUser({user:'ureadonly',pwd:'ureadonly123',roles:[{role:'read',db:'mgdb_message'}]})
11.开发账号登陆
/usr/local/services/mongodb/bin/mongo 192.168.1.139:28001
use mgdb_message
db.auth("threedev","threedev123");
建表
db.tb_test.insert({"name": "xiaoming"});
> show tables;
tb_test