Centos6.8 安装mongo3.6以及权限配置和开启外网链接
安装环境和版本说明,以及参考文档链接
- 服务器:阿里云Centos6.8
- Mongo版本:3.6
- 官网文档
- 参考文章:
- Mongo权限配置:http://blog.csdn.net/wangdatao_/article/details/78077774
- SELinux状态查看: http://blog.51cto.com/bguncle/957315
安装MongoDB数据库
- 配置MongoDB的源文件
[root@virde ~]# sudo vim /etc/yum.repos.d/mongodb-enterprise.repo
然后键入以下内容
[mongodb-enterprise]
name=MongoDB Enterprise Repository
baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/3.6/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
- 下载安装包,使用yum install进行安装
[root@virde ~]# sudo yum install -y mongodb-enterprise
运行MongoDB数据库
- 配置SELinux
如果你使用了SELinux,那么必须配置SELinux,不然会影响MongoDB的启动。
If you are using SELinux, you must configure SELinux to allow MongoDB to start on Red Hat Linux-based systems (Red Hat Enterprise Linux or CentOS Linux).
使用/usr/sbin/sestatus -v 命令查看SELinux的状态
[root@virde ~]# /usr/sbin/sestatus -v
SELinux status: disabled
如果是disabled的话就可以略过这一步了
如果是开启状态,那么关闭SELinux即可
[root@virde ~]# vim /etc/selinux/config
然后找到SELINUX改为disabled
SELINUX=disabled
```
* 运行MongoDB
好了,现在可以先把mongo运行起来了。
```bash
[root@virde ~]# sudo service mongod start
Starting mongod: [ OK ]
```
查看 /var/log/mongodb/mongod.log,如果有
[initandlisten] waiting for connections on port 27017
说明MongoDB已经成功运行起来了。
```
[root@virde ~]# tail -f /var/log/mongodb/mongod.log
```
* 停止MongoDB
```bash
[root@virde ~]# sudo service mongod stop
Stopping mongod: [ OK ]
```
* 重启MongoDB
```bash
[root@virde ~]# sudo service mongod restart
Stopping mongod: [ OK ]
Starting mongod: [ OK ]
```
* 进入MongoDB shell
```bash
[root@virde ~]# mongo
MongoDB shell version v3.6.2
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.2
Server has startup warnings:
2018-02-02T16:27:11.395+0800 I STORAGE [initandlisten]
2018-02-02T16:27:11.395+0800 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2018-02-02T16:27:11.395+0800 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten]
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten]
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten]
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten]
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten]
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 1024 processes, 65535 files. Number of processes should be at least 32767.5 : 0.5 times number of files.
2018-02-02T16:27:11.927+0800 I CONTROL [initandlisten]
>
```
## 删除卸载MongoDB
```bash
[root@virde ~]# sudo service mongod stop
[root@virde ~]# sudo yum erase $(rpm -qa | grep mongodb-enterprise)
[root@virde ~]# sudo rm -r /var/log/mongodb
[root@virde ~]# sudo rm -r /var/lib/mongo
```
## 配置MongoDB管理员用户
> 必须先配置管理员用户,才能开启权限
在MongoDB shell命令行中执行以下命令
```bash
> use admin ;
> db.createUser({
... user:"adminUser",
... pwd:"thisisyourpass",
... roles:[{role:"root",db:"admin"}]
... });
```
## 修改配置文件,允许外网链接
```bash
[root@virde ~]# vim /etc/mongod.conf
```
配置文件如下
```
# 将bindIp改为0.0.0.0
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 # Listen to local interface only, comment to listen on all interfaces.
# 开启权限认证
security:
authorization: enabled
```
修改后的完整文件如下:
```
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
# Where and how to store data.
storage:
dbPath: /var/lib/mongo
journal:
enabled: true
# engine:
# mmapv1:
# wiredTiger:
# how the process runs
processManagement:
fork: true # fork and run in background
pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 # Listen to local interface only, comment to listen on all interfaces.
security:
authorization: enabled
```
重启MongoDB。
```
[root@virde ~]# sudo service mongod restart
Stopping mongod: [ OK ]
Starting mongod: [ OK ]
```
## 安装配置完成,使用Robo3T测试链接

## 总结
* 其实整个安装过程并不复杂,但是各种配置实在头疼。
* 官方文档真的是最棒的!但是看不懂英文就很恶心。
Centos6.8 安装mongo3.6以及权限配置和开启外网链接的更多相关文章
- .NET Core项目部署到Linux(Centos7)(九)防火墙配置,允许外网或局域网访问.NET Core站点
目录 1.前言 2.环境和软件的准备 3.创建.NET Core API项目 4.VMware Workstation虚拟机及Centos 7安装 5.Centos 7安装.NET Core环境 6. ...
- TortoiseSVN和VisualSVN-Server的配置使用,外网访问SVN版本库
TortoiseSVN和VisualSVN-Server的配置使用,外网访问SVN版本库 SVN客户端程序:TortoiseSVN SVN服务器程序:VisualSVN-Server ######## ...
- ubuntu 配置dns访问外网
我新建了一个虚拟机后采用的net模式 一 先配置虚拟机ip使其能在局域网内通信 1.vmware 编辑->虚拟网络编辑器 可以看到网关.掩码等信息 可以看到我们配置的ip应该在192.168.1 ...
- VMware下Linux网络配置局域网和外网访问
要使用Linux系统很重要的一个操作就是使Linux系统能够访问互联网,只有Linux系统能够访问互联网才能够去下载很多自己所需要的资源,如果不能访问互联网那么使用Linux系统往往会卡在这一步,假设 ...
- VMware下Linux配置局域网和外网访问(CentOS)
要使用Linux系统很重要的一个操作就是使Linux系统能够访问互联网,只有Linux系统能够访问互联网才能够去下载很多自己所需要的资源,如果不能访问互联网那么使用Linux系统往往会卡在这一步,假设 ...
- centos7下配置iptables实现外网访问内网服务器
说明:Centos 7 默认的防火墙是 firewall,安装iptables之前需关闭Firewall 外网机器:外网ip:120.25.71.183内网ip:10.1.1.23 内网机器:内网ip ...
- OpenStack Neutron配置虚拟机访问外网
配置完成后的网络拓扑如下: 当前环境: X86服务器1台 Ubuntu 16.04 DevStack搭建OpenStack 网络拓扑: 外部网络:192.168.98.0/24 内部网络:10.0.0 ...
- wamp基本配置与设置外网访问
wamp安装(都是一键安装)正常启动后,做一些基本配置的介绍: 1.打开rewrite_module,方法一:左键点击wamp图标,鼠标移至Apache,然后平移至Apache模块,勾选rewrite ...
- elasticsearch7.6 安装 并且开启外网访问,真的好累。
下载 下载页面 https://www.elastic.co/cn/downloads/elasticsearch wget https://artifacts.elastic.co/download ...
随机推荐
- Ubuntu 12.04 设置终端字体为文泉驿(转载)
转自:http://my.oschina.net/uniquejava/blog/98480 0.说明 在gnome-terminal终端中看习惯了文泉驿微米黑字体,没想到从11.10升级到 ...
- 51nod 1238 最小公倍数之和 V3 【欧拉函数+杜教筛】
首先题目中给出的代码打错了,少了个等于号,应该是 G=0; for(i=1;i<=N;i++) for(j=1;j<=N;j++) { G = (G + lcm(i,j)) % 10000 ...
- react-native页面之间的相互传值
react-native页面之间的相互传值 之前在自己学习react-native的时候,在页面跳转和传值问题上花了一段时间去网上搜索和查找资料,自己总结了两个方法.可以参考 https://blog ...
- 图论算法->最短路
求最短路算法,有Floyd,dijkstra,Bellmanford,spfa等诸多高级算法.优化方法也是层出不穷. 我们不妨分析一下各算法的使用特点(可能不准确 1.Floyd算法 复杂度O(n³) ...
- Ubuntu 18.04 关闭蓝牙开机启动
sudo gedit /etc/rc.local 然后,加入下面一行 rfkill block bluetooth
- 《windows核心编程系列》二十一谈谈基址重定位和模块绑定
每个DLL和可执行文件都有一个首选基地址.它表示该模块被映射到进程地址空间时最佳的内存地址.在构建可执行文件时,默认情况下链接器会将它的首选基地址设为0x400000.对于DLL来说,链接器会将它的首 ...
- Qt之程序发布以及打包成exe安装包
一.简述 Qt项目开发完成之后,需要打包发布程序,而因为用户电脑上没有Qt配置环境,所以需要将release生成的exe文件和所依赖的dll文件复制到一个文件夹中,然后再用 Inno Setup打包工 ...
- ROS学习笔记二:ROS系统架构及概念
本文主要是了解ROS的系统架构.文件夹结构以及工作所需的核心文件. ROS系统架构主要被设计和划分为三部分,每一部分代表一个层级的概念:文件系统级(The filesystem level).计算图级 ...
- TSP+Floyd BestCoder Round #52 (div.2) 1002 Victor and Machine
题目传送门 题意:有中文版的 分析:(出题人的解题报告)我们首先需要预处理出任意两个国家之间的最短距离,因为数据范围很小,所以直接用Floyd就行了.之后,我们用f[S][i]表示访问国家的情况为S, ...
- @GetMapping和@PostMapping 和@RequestMapping区别
@GetMapping 用于将HTTP GET请求映射到特定处理程序方法的注释. 具体来说,@GetMapping是一个作为快捷方式的组合注释@RequestMapping(method = Requ ...