云网牛站
所在位置:首页 > Linux云数据库 > Ubuntu 16.04安装MongoDB

Ubuntu 16.04安装MongoDB

2017-10-19 21:39:59作者:Linux编辑稿源:topspeedsnail

1.添加MongoDB仓库

其实MongoDB已经在Ubuntu的默认仓库中了,只是它并不是最新版。建议使用官方的MongoDB仓库,添加key:

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

添加源:

$ echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

 

2.安装MongoDB

$ sudo apt-get update

$ sudo apt-get install mongodb-org

 

3.启动MongoDB服务

$ sudo systemctl start mongod

$ sudo systemctl status mongod

Ubuntu 16.04安装MongoDB

开机自启:

$ sudo systemctl enable mongod

MongoDB源代码:https://github.com/mongodb/mongo

mongoDB文档:https://docs.mongodb.com/manual/

 

4.MongoDB安全设置

MongoDB的登陆认证默认是关闭的,本地系统的任意用户都可以访问数据库,并且拥有全部访问权限。为了提高数据库安全,下面来开启认证功能并创建一个管理员用户。

进入Mongo shell:

$ mongo

创建一个管理员用户:

> use admin    # 切换数据库

> db.createUser(

{

user: "NewAdmin",

pwd: "Test1234",

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

})

https://docs.mongodb.com/manual/core/authentication/

执行exit命令或CTRL-C退出Mongo shell。

编辑mongod.conf开启authorization,这样用户需要提供用户名和密码才能操作mongo(没登陆认证也可以连接)。

$ sudo vim /etc/mongod.conf

去掉#security:前的注释并添加一行,如下:

. . .

security:

authorization: "enabled"

. . .

重启mongodb使配置生效:

$ sudo systemctl restart mongod

Ubuntu 16.04安装MongoDB

使用新创建的管理员用户登陆:

$ mongo -u NewAdmin -p --authenticationDatabase admin

Ubuntu 16.04安装MongoDB

 

5.配置远程访问

编辑mongod.conf配置文件,添加:

. . .

net:

port: 27017

bindIp: 127.0.0.1,IP_of_MongoHost

. . .

重启mongod。

$ mongo -u NewAdmin -p --authenticationDatabase admin --host IP_of_MongoHost

可以使用ufw防火墙限制哪些客户端可连接。

精选文章
热门文章