(一)MOngoDB的安装与配置(Windows和Centos)

其实Windows的安装没有什么难的,主要是后的Centos下的安装,我是在centos7上安装测试的,不管是手动安装还是脚本安装我都是成功才发出来的,有什么的问题可以留言,写博客只是为了记录和简单的分享,不喜勿喷

安装包下载

官网连接,根据自己的的设备进行下载,我这里下载的Windows的安装版(CentOS的我下载的解压缩版的,同时编写了自动安装的脚本)
在这里插入图片描述

安装

Windows#

下载完成后打开进行安装,下面这两个需要修改,点击Custom修改安装路径
在这里插入图片描述
这里根据自己的实际情况进行安装
在这里插入图片描述
选择完成后点击next继续,然后选择data目录和log目录,以及可以修改mongodb的服务名称,完成后以一路点下去完成安装,
在这里插入图片描述
安装完成后打开环境变量配置环境变量
在这里插入图片描述
然后把MONGO_HOME添加到path中去,这里可以直接配置在path中,两个都是可以的,只是我习惯这样配置,
在这里插入图片描述
配置完成后保存后打开cmd或者PowerShell输入mongo能看到一下内容即可
在这里插入图片描述

CentOS#

手动安装#

因为配置的时候编写文档的时候没有截图导致现在发帖也没有图片,但是是我亲自尝试过没有问题的,下面是详细教程
将文件“mongodb-linux-x86_64-4.0.16.tgz”上传到服务器(我上传在/usr/local/)
下面展示一些 内联代码片

[root@localhost ~]# cd /usr/local/

解压安装包

[root@localhost local]# tar -zxvf mongodb-linux-x86_64-4.0.16.tgz

重命名

[root@localhost local]# mv mongodb-linux-x86_64-4.0.16 ./mongodb

配置环境变量

[root@localhost mongodb]# vi /etc/profile

添加以下代码

export PATH=/usr/local/mongodb/bin:$PATH

保存后退出使用以下命令让环境变量生效

source /etc/profile

创建data和log文件夹并赋予权限

[root@localhost mongodb]# mkdir -m 777 data log

创建配置文件和日志文件

touch {mongodb.conf,/usr/local/mongodb/log/mongodb.log}

添加配置文件内容

[root@localhost mongodb]# vi mongodb.conf

将以下代码添加进去

port=27017
#设置端口
dbpath=/usr/ local/mongodb/data
#数据库存文件存放目录
logpath=/usr/ local/mongodb/log/mongodb.log
#日志文件存放路径
logappend=true
#使用追加的方式写日志
fork=true
#以守护进程的方式运行,创建服务器进程
maxConns=100
#最大同时连接数
noauth=true
#不启用验证
journal=true
#每次写入会记录一条操作日志
storageEngine=wiredTiger
#存储引擎(mmapv1、wiretiger、mongorocks)
bind_ip=0.0.0.0
#设置可访问的IP段,0.0.0.0为全部允许

保存后退出(ESC,然后输入:wq)
创建服务

[root@localhost mongodb]# cd /lib/systemd/system
[root@localhost system]# vi mongodb.service

添加以下代码

[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target

保存后退出(ESC,然后输入:wq)
设置权限

[root@localhost system]# chmod 754 mongodb.service

设置开机启动

[root@localhost system]# systemctl enable mongodb.service

服务相关命令#

systemctl enable mongodb.service
#设置开机启动
systemctl disable mongodb.service
停止开机启动
systemctl start mongodb.service
#启动服务
systemctl status mongodb.service
#查看服务状态
systemctl restart mongodb.service
#重启服务
systemctl stop mongodb.service
#停止服务
systemctl daemon-reload
#修改服务配置后重新载入
systemctl list-units --type=service
#查看所有已启动的服务

运行命令,此时就完成了服务进程配置

有的时候会由于没有正常关闭mongod服务,导致mongod被锁,不能正常的systemctl start mongodb.service数据库,
解决办法:删除掉mongod db 里的mongod.lock文件,然后重新启动服务即可。

脚本安装#

自己复制以下内容,然后创建一个文本文档,贴进去然后改成.sh文件,和tgz文件一起复制到centos机器上,但是注意在Windows下的格式,不然会有问题的
在这里插入图片描述

tar -zxvf ./mongodb-linux-x86_64-4.0.16.tgz -C /usr/local/
cd /usr/local/
mv mongodb-linux-x86_64-4.0.16 ./mongodb
#配置环境变量
echo "export PATH=/usr/local/mongodb/bin:$PATH" >> /etc/profile
source /etc/profile

cd /usr/local/mongodb
mkdir -m 777 data log
touch {mongodb.conf,/usr/local/mongodb/log/mongodb.log}

echo "port=27017" >> ./mongodb.conf
echo "dbpath=/usr/local/mongodb/data" >> ./mongodb.conf
echo "logpath=/usr/local/mongodb/log/mongodb.log" >> ./mongodb.conf
echo "logappend=true" >> ./mongodb.conf
echo "fork=true" >> ./mongodb.conf
echo "maxConns=100" >> ./mongodb.conf
echo "noauth=true" >> ./mongodb.conf
echo "journal=true" >> ./mongodb.conf
echo "storageEngine=wiredTiger" >> ./mongodb.conf
echo "bind_ip=0.0.0.0" >> ./mongodb.conf

cd /lib/systemd/system

touch mongodb.service
echo "[Unit]" >> ./mongodb.service
echo "Description=mongodb" >> ./mongodb.service
echo "After=network.target remote-fs.target nss-lookup.target" >> ./mongodb.service
echo "[Service]" >> ./mongodb.service
echo "Type=forking" >> ./mongodb.service
echo "ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf" >> ./mongodb.service
echo "ExecReload=/bin/kill -s HUP \$MAINPID" >> ./mongodb.service
echo "ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/mongodb.conf" >> ./mongodb.service
echo "PrivateTmp=true" >> ./mongodb.service
echo "[Install]" >> ./mongodb.service
echo "WantedBy=multi-user.target" >> ./mongodb.service
chmod 754 mongodb.service
systemctl enable mongodb.service

这里的mongodb.conf和mongodb.service手动创建了复制进去,根据自己的习惯进行修改,这里只是提供一个安装的 方法

文件下载

所有的文件和文档我都上传到毒盘上了,有需要的可以自行下载
毒盘 提取码:aecd

作者:TanXJ

出处:https://www.cnblogs.com/tanxj/p/14084574.html

posted @   路遥_13  阅读(198)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
more_horiz
keyboard_arrow_up light_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示