Mongodb基本配置方法

一些关于mongo安装,用户管理,外网访问的设置

安装

使用yum安装

1.建立 mongodb-org-3.6.repo文件

1
2
cd /etc/yum.repos.d/
touch mongodb-org-3.6.repo

2.将以下信息写入mongodb-org-3.6.repo

1
2
3
4
5
6
[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

3.安装

1
$ sudo yum install -y mongodb-org

4.打开rc.local文件,添加CentOS开机启动项:

1
$ vim /etc/rc.d/rc.local

5.将mongodb启动命令追加到本文件中,让mongodb开机自启动:

1
$ mongod --dbpath=/var/mongodb/data --logpath /var/mongodb/logs/log.log -fork

6.启动mongodb

1
$ mongod --dbpath=/var/mongodb/data --logpath /var/mongodb/logs/log.log -fork

7.看到如下信息说明已经安装完成并成功启动:

1
2
forked process: 18394
all output going to: /var/mongodb/logs/log.log

用户

1.使用mongod启动数据库

1
$ mongod

2.另起终端,创建admin用户

1
2
3
4
5
6
7
8
9
10
11
12
mongo
// 切换到admin库
use admin
// 创建管理员用户
db.createUser({
user: "admin",
pwd: "admin",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)

3.断开连接,关闭数据库,启用验证登陆

1
$ mongod --auth

4.登陆

1
2
3
4
5
6
7
8
9
// 第一种
mongo -u "admin" -p "19940101Wx" --authenticationDatabase "admin"
// 第二种
mongo
use admin
db.auth("admin", "19940101Wx")

5.创建普通用户
为某个数据库创建普通用户

1
2
3
4
5
6
7
8
9
10
11
// 切换到blog库
use blog
// 创建对blog库有读写权限的用户
db.createUser(
{
user: "helloathon",
pwd: "athon1",
roles: [ { role: "readWrite", db: "blog" }]
}
)

外网访问

1.修改配置文件

1
$ vim /etc/mongodb.conf
1
2
3
4
5
bind_ip = 0.0.0.0
port = 27017
auth=true

2.重启mongo

1
$

3.打开防火墙端口

1
$ iptables -A INPUT -p tcp -m tcp --dport 27017 -j ACCEPT