安装环境和版本说明,以及参考文档链接

安装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测试链接
![](http://res.virde.cn/img/chun/blog/201802/1517561259245.png) ## 总结
* 其实整个安装过程并不复杂,但是各种配置实在头疼。
* 官方文档真的是最棒的!但是看不懂英文就很恶心。

Centos6.8 安装mongo3.6以及权限配置和开启外网链接的更多相关文章

  1. .NET Core项目部署到Linux(Centos7)(九)防火墙配置,允许外网或局域网访问.NET Core站点

    目录 1.前言 2.环境和软件的准备 3.创建.NET Core API项目 4.VMware Workstation虚拟机及Centos 7安装 5.Centos 7安装.NET Core环境 6. ...

  2. TortoiseSVN和VisualSVN-Server的配置使用,外网访问SVN版本库

    TortoiseSVN和VisualSVN-Server的配置使用,外网访问SVN版本库 SVN客户端程序:TortoiseSVN SVN服务器程序:VisualSVN-Server ######## ...

  3. ubuntu 配置dns访问外网

    我新建了一个虚拟机后采用的net模式 一 先配置虚拟机ip使其能在局域网内通信 1.vmware 编辑->虚拟网络编辑器 可以看到网关.掩码等信息 可以看到我们配置的ip应该在192.168.1 ...

  4. VMware下Linux网络配置局域网和外网访问

    要使用Linux系统很重要的一个操作就是使Linux系统能够访问互联网,只有Linux系统能够访问互联网才能够去下载很多自己所需要的资源,如果不能访问互联网那么使用Linux系统往往会卡在这一步,假设 ...

  5. VMware下Linux配置局域网和外网访问(CentOS)

    要使用Linux系统很重要的一个操作就是使Linux系统能够访问互联网,只有Linux系统能够访问互联网才能够去下载很多自己所需要的资源,如果不能访问互联网那么使用Linux系统往往会卡在这一步,假设 ...

  6. centos7下配置iptables实现外网访问内网服务器

    说明:Centos 7 默认的防火墙是 firewall,安装iptables之前需关闭Firewall 外网机器:外网ip:120.25.71.183内网ip:10.1.1.23 内网机器:内网ip ...

  7. OpenStack Neutron配置虚拟机访问外网

    配置完成后的网络拓扑如下: 当前环境: X86服务器1台 Ubuntu 16.04 DevStack搭建OpenStack 网络拓扑: 外部网络:192.168.98.0/24 内部网络:10.0.0 ...

  8. wamp基本配置与设置外网访问

    wamp安装(都是一键安装)正常启动后,做一些基本配置的介绍: 1.打开rewrite_module,方法一:左键点击wamp图标,鼠标移至Apache,然后平移至Apache模块,勾选rewrite ...

  9. elasticsearch7.6 安装 并且开启外网访问,真的好累。

    下载 下载页面 https://www.elastic.co/cn/downloads/elasticsearch wget https://artifacts.elastic.co/download ...

随机推荐

  1. Ubuntu 12.04 设置终端字体为文泉驿(转载)

    转自:http://my.oschina.net/uniquejava/blog/98480 0.说明      在gnome-terminal终端中看习惯了文泉驿微米黑字体,没想到从11.10升级到 ...

  2. 51nod 1238 最小公倍数之和 V3 【欧拉函数+杜教筛】

    首先题目中给出的代码打错了,少了个等于号,应该是 G=0; for(i=1;i<=N;i++) for(j=1;j<=N;j++) { G = (G + lcm(i,j)) % 10000 ...

  3. react-native页面之间的相互传值

    react-native页面之间的相互传值 之前在自己学习react-native的时候,在页面跳转和传值问题上花了一段时间去网上搜索和查找资料,自己总结了两个方法.可以参考 https://blog ...

  4. 图论算法->最短路

    求最短路算法,有Floyd,dijkstra,Bellmanford,spfa等诸多高级算法.优化方法也是层出不穷. 我们不妨分析一下各算法的使用特点(可能不准确 1.Floyd算法 复杂度O(n³) ...

  5. Ubuntu 18.04 关闭蓝牙开机启动

    sudo gedit /etc/rc.local 然后,加入下面一行 rfkill block bluetooth

  6. 《windows核心编程系列》二十一谈谈基址重定位和模块绑定

    每个DLL和可执行文件都有一个首选基地址.它表示该模块被映射到进程地址空间时最佳的内存地址.在构建可执行文件时,默认情况下链接器会将它的首选基地址设为0x400000.对于DLL来说,链接器会将它的首 ...

  7. Qt之程序发布以及打包成exe安装包

    一.简述 Qt项目开发完成之后,需要打包发布程序,而因为用户电脑上没有Qt配置环境,所以需要将release生成的exe文件和所依赖的dll文件复制到一个文件夹中,然后再用 Inno Setup打包工 ...

  8. ROS学习笔记二:ROS系统架构及概念

    本文主要是了解ROS的系统架构.文件夹结构以及工作所需的核心文件. ROS系统架构主要被设计和划分为三部分,每一部分代表一个层级的概念:文件系统级(The filesystem level).计算图级 ...

  9. TSP+Floyd BestCoder Round #52 (div.2) 1002 Victor and Machine

    题目传送门 题意:有中文版的 分析:(出题人的解题报告)我们首先需要预处理出任意两个国家之间的最短距离,因为数据范围很小,所以直接用Floyd就行了.之后,我们用f[S][i]表示访问国家的情况为S, ...

  10. @GetMapping和@PostMapping 和@RequestMapping区别

    @GetMapping 用于将HTTP GET请求映射到特定处理程序方法的注释. 具体来说,@GetMapping是一个作为快捷方式的组合注释@RequestMapping(method = Requ ...