我是如何在linux下 安装 mongoDB的

  • Post author:
  • Post category:linux


在这里插入图片描述



背景

接到上级任务,需要在测试环境搭建一套mongodb;对于从来没接触过mongodb的小白,但拥有多年编程经验的我来说,不虚好吧。因为我有自己做事的思考。

首先向领导确认两点:

  1. 搭建mongo db是单机版的,还是主从模式,还是分片模式?
  2. 线上使用mongodb 版本是多少?

这是做这件事情的输入;输出是能在测试环境有一套mongodb实例,应用能连上。OK,接下来按部就班的进行吧。



第一步 下载软件

因为某些方面原因,线上mongo 版本较老,用的是4.4.4,正好同事有tgz包,直接上传到服务器上。

我是运气好。没安装来源的,可从官网上下载,链接https://www.mongodb.com/try/download/community



第二步 阅读安装文档

官方安装文档链接:https://www.mongodb.com/docs/v4.4/tutorial/install-mongodb-on-red-hat-tarball/

英文比较好的同学,建议直接看官方的操作手册。如果喜欢中文版本的,请继续》

PS:正常情况下这种安装文档,团队内应该是做为知识文档进行沉淀的。可咋不是刚入职了个小公司。其它小公司咋不清楚;但这个小公司除了代码以为,PRD和技术文档那是屈指都没的数



第三步 动手开始安装



解压文件

下载好的安装包,通过ftp上传到/usr/local/src/(具体存到那个目录,以项目规范为主);然后执行解压命令

tar -zxvf mongodb-linux-x86_64-rhel62-4.4.4.tgz 


创建相关目录

tgz手工安装情况下,mongodb是不会创建mongo数据存放文件目录,mongo运行日志目录,以及mongo配置文件目录,需要自己新建;执行以下命令;

cd mongodb-linux-x86_64-rhel62-4.4.4
mkdir data logs conf


创建mongodb 配置文件

此配置文件,主要用于配置mongo 启动端口,配置数据存放文件目录路径,日志目录路径等信息

vim  conf/mongodb.conf

把以下配置信息放入配置文件中

# 日志文件位置
logpath=/usr/local/src/mongodb-linux-x86_64-rhel62-4.4.4/logs/mongod.log
# 以追加方式写入日志
logappend=true
# 是否以守护进程方式运行
fork=true
# 默认27017
port = 27017
#最大同时连接数
maxConns=100
# 数据库文件位置
dbpath=/usr/local/src/mongodb-linux-x86_64-rhel62-4.4.4/data
# 允许哪个ip的连接,0.0.0.0表示任意ip都可以连接
bind_ip=0.0.0.0
# 是否以安全认证方式运行,默认是不认证的非安全方式,一开始安装建议不要开启,设置好密码后再重启
#auth = true


环境变量设置——可选操作

如果想要在任何路径运行mongodb命令,可以编辑profile文件环境;把mongodb bin目录放入到系统path环境变量里,在profile文件的最后一行加入。命令

vim /etc/profile
export PATH=/usr/local/src/mongodb-linux-x86_64-rhel62-4.4.4/bin:$PATH

保存之后,使这个profile文件生效

source profile


启动Mongo DB
mongod --config /usr/local/src/mongodb-linux-x86_64-rhel62-4.4.4/conf/mongodb.conf 

正确启动后的界面为

[root@cddatadev128 bin]# mongod --config /data/mongodb4.4/mongodb-linux-x86_64-rhel62-4.4.4/conf/mongodb.conf 
about to fork child process, waiting until server is ready for connections.
forked process: 12949
child process started successfully, parent exiting

如果出现以下界面,检查配置文件路径是否正确

1687913756462.png



第四步 添加安全认证——可选操作

虽然在小公司,但做事还是不能太水了,至少还得有自己专业的一面。大多数网上安装文档到第五步就结束了;但个人认为 安全问题有时比业务更重要,建议加上安全认证

配置全局变量之后,任意路径均可输入指令访问数据库:

(如果没有配置,进入/usr/local/src/mongodb-linux-x86_64-rhel62-4.4.4/bin目录下,同样有mongo 命令)

[root@cddatadev128 mongodb-linux-x86_64-rhel62-4.4.4]# mongo
MongoDB shell version v4.4.4
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("618b5d26-0eb9-4271-a6f9-4912fe8e3060") }
MongoDB server version: 4.4.4

通过以下命令创建用户

> use admin
> db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})

关闭mongo服务

db.shutdownServer()

打开 mongo.conf里关于安全验证配置

auth = true

使用启动mongo db方法,重新启动即可

mongod --config /usr/local/src/mongodb-linux-x86_64-rhel62-4.4.4/conf/mongodb.conf



版权声明:本文为liuwenjie517333813原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。