Centos上安装MongoDB4.X
一、下载并解压MongoDB
1、下载MongoDB 取件码w2px
2、通过ftp软件上传的服务器上,我的位置:/root/softwares

3、解压并放在opt文件夹下:tar zxvf mongodb4.2.2.tgz -C /opt/
4、切换到 opt 目录:cd /opt
5、重命名 mv mongodb-linux-x86_64-rhel70-4.2.2 mongodb4

二、配置环境变量
1、vim /etc/profile
// /opt/mongodb4/bin 为当前需要新增的环境变量,$PATH为已有的环境变量,":"为拼接
2、export PATH=/opt/mongodb4/bin:$PATH
// 执行文件刷新环境变量
3、source /etc/profile
三、创建数据库目录
// 进入/opt/mongodb4目录
cd /opt/mongodb4
// 创建配置文件
touch mongodb.conf
// 创建db目录
mkdir db
// 创建log目录
mkdir log
// 进入log目录
cd log
// 创建log文件
touch mongodb.log
四、修改配置文件
vim /opt/mongodb4/mongodb.conf
//写入以下内容
port=27177 #端口 默认端口是27017,但是mongodb特别容易被攻击,所以这里不建议使用默认端口
dbpath= /opt/mongodb4/db #数据库存文件存放目录,如果有数据盘最好放在数据盘里面
logpath= /opt/mongodb4/log/mongodb.log #日志文件存放路径
logappend=true #使用追加的方式写日志
fork=true #以守护进程的方式运行,创建服务器进程
maxConns=100 #最大同时连接数
auth=false #不启用验证,先不开启,配完用户在更改开启
journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
storageEngine=wiredTiger #存储引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0 #0.0.0.0代表任何IP地址,如果写127.0.0.1那就只能本机访问,其他同理
五、设置文件夹权限
cd /opt/mongodb4
chmod 777 db // 赋予该目录可读可写可执行权限
chmod 777 log // 赋予该目录可读可写可执行权限
六、启动MongoDB
启动命令:mongod -f /opt/mongodb4/mongodb.conf
如果是新服务器,有可能会报下面的错误,原因是没有必要的依赖库

解决方法:去http://rpmfind.net/linux/rpm2html/search.php?query=libcrypto.so.10%28OPENSSL_1.0.2%29%2864bit%29&submit=Search+...&system=&arch=下载必要的依赖
下载下来之后直接安装就行了:安装命令:rpm -ivh compat-openssl10-1.0.2o-3.el8.x86_64.rpm

再次重启,就成功了

七、创建超级管理员
先登录mongo客户端

创建超级管理员:

八、修改配置文件,开启权限认证

九、重启MongoDB
在重启mongo之前,先说说怎么关闭mongo
linux 如何正确的关闭mongodb
有的朋友说可以通过下面的命令关闭mongodb:
killall mongodb
#or
kill -9 mongo-pid
上面的方法确实可以关闭mongodb,但是正确的做法不是这样子的,mongodb提供了关闭数据库的命令:
首先需要进入到mongodb目录下bin/mongo,连接到mongodb,然后执行下面脚本:
use admin
db.auth("root","Se7eN521")
db.runCommand("shutdown")
上面第一行切换到admin数据库,第二行则是执行关闭操作
也可以使用db.shutdownServer()命令
关闭之后,再次重启:

十、Navicat连接
如果出现下面错误,多数情况下是,新服务器没有开放mongo的对外端口,在安全组(阿里云)或者防火墙(腾讯云)上开发端口



十一、设置mongo的开机启动
1.在/lib/systemd/system/目录下新建mongodb.service文件,内容如下:
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/opt/mongodb4/bin/mongod --config /opt/mongodb4/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/opt/mongodb4/bin/mongod --shutdown --config /opt/mongodb4/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
1、其中ExecStart和ExecStop换成自己的mongo路径
2、更改权限: chmod 754 mongodb.service
3、启动服务:systemctl start mongodb.service
4、关闭服务:systemctl stop mongodb.service
5、开机启动:systemctl enable mongodb.service
Centos上安装MongoDB4.X的更多相关文章
- NoSql1 在Linux(CentOS)上安装memcached及使用
前言: 今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...
- 在Ubuntu|CentOS上安装Shutter截图工具及快捷键设置
简介 Shutter前身叫GScrot,它是一款相当棒的截图软件. 通过Shutter,你可以截取包括选定区域.全屏幕.窗口.窗口内的控件甚至网页的图像.通过内置的强大插件机制,你可以在截图后,对图像 ...
- 在CentOS上安装rabbitmq-server
***在 CentOS 6.4上安装python*** 注意啊,自己手动安装python2.7.5,不要动系统上面其他的版本 1,先安装GCC,用如下命令yum install gcc gcc-c++ ...
- CentOS上安装软件错误提示:configure: error: no acceptable C compiler found in $PATH
CentOS上安装软件错误提示:configure: error: no acceptable C compiler found in $PATH 因为是centos linux,默认可以采用yum方 ...
- 如何在centos上安装epel源
一.EPEL是什么? EPEL (Extra Packages for Enterprise Linux,企业版Linux的额外软件包) 是Fedora小组维护的一个软件仓库项目,为RHEL/Cent ...
- 在Centos上安装RabbitMQ流程(转)
在Centos上安装RabbitMQ流程------------------------ 1. 需求 由于项目中要用到消息队列,经过ActiveMQ与RabbitMQ的比较,最终选择了RabbbitM ...
- 在CentOS上安装ZooKeeper集群
一共准备3个CentOS虚拟机 172.16.9.194 172.16.9.195 172.16.9.196 上传zookeeper-3.3.6.tar.gz到服务器并解压,3台服务器的目录结构如下 ...
- CentOS上安装Node.js
CentOS上安装Node.js [日期:2014-07-21] 来源:Linux社区 作者:maskdfe [字体:大 中 小] CentOS上安装Node.js(想在Linux上学习No ...
- Linux系统入门学习:在CentOS上安装phpMyAdmin
问题:我正在CentOS上运行一个MySQL/MariaDB服务,并且我想要通过网络接口来用phpMyAdmin来管理数据库.在CentOS上安装phpMyAdmin的最佳方法是什么? phpMyAd ...
随机推荐
- NOIP 模拟 六十九
0+30+40+90, 菜..... T1 取石子 考试扔了将近两个小时,最后也没有回忆起博弈论的相关内容.. 现在只会50pts.正解待补. #include<bits/stdc++.h> ...
- 创业公司用 Serverless,到底香不香?
作者 | Mike Butusov 来源 | Serverless 公众号 在过去的 5 年里,使用云厂商处理应用后台的流行程度大幅飙升.其一,初创企业主采用 Serverless 方式,以节省基础设 ...
- Java基础之(四):使用IDEA实现HelloWorld
使用IDEA实现HelloWorld 在使用IDEA这个集成开发环境写Java程序之前,我们要先对IDEA进行一些基本的配置,以便我们能够更好地使用它. 新建一个空项目,用来学习基础语法 设置项目名称 ...
- java语言程序设计与数据结构(基础篇)第二章答案
答案为本人自己求解,若有错误,还望海涵并及时告知.如有雷同,纯属巧合. 2.1 import java.util.Scanner; public class Welcome { public stat ...
- Python 实现断网自动重连
为了实现 断网了,自动连接网络原理:每隔一段时间ping一下百度,判断网络状态,没有联网的话,就模仿浏览器发一条Post给服务器import urllibimport hashlibimport su ...
- C++ cin和while cin
int main(){ string input; vector<string> arr; while(cin >> input) { cout << " ...
- 正则表达式: NFA引擎匹配原理
NFA引擎匹配原理 1 为什么要了解引擎匹配原理 一个个音符杂乱无章的组合在一起,弹奏出的或许就是噪音,同样的音符经过作曲家的手,就可以谱出非常动听的乐曲,一个演奏者同样可以照着乐谱奏出动 ...
- 【二食堂】Alpha - 测试报告
TextMarking Alpha阶段测试报告 前后端测试过程及结果 在Alpha阶段,测试工作紧跟后端开发进度,一下是我们所做的一些测试工作. 后端单元测试 测试代码可以在git仓库中查看,后端对所 ...
- NOIP模拟86(多校19)
T1 特殊字符串 解题思路 \(f_{i,j}\) 表示前 \(i\) 个字符中结尾为 \(j\) 的最大贡献. 转移枚举当前位置于之前位置结尾的组合加上贡献即可. 对于边界问题,容易发现选择 1 一 ...
- 从零开始的DIY智能浇水应用
前言 作为一个新世纪打工人,平常也会去养一些花草,来给我的房间增加点绿色和活力,但是常常因为工作忙而忘记一些事情.,毕竟我大部分的时间都是陪伴着电脑的(严正声明:我不是个单身狗!!! (¬◡¬)✧), ...