在linux中 部署 mongo 数据库服务端

1 首先需要一台linux服务器(我用的redhat linux,其它的也大同小异),

玩一玩的话,推荐亚马逊上面去创建一个免费的linux服务器,有关具体创建linux服务器不在这赘述。

https://us-west-2.console.aws.amazon.com/ec2/v2/home?region=us-west-2#Instances:sort=instanceId

2 安装MongoDB3.4社区版,配置MongoDB的yum源,输入命令:(最好用root登录,如果不是请在命令前加 sudu 命令)

1
vim /etc/yum.repos.d/mongodb-org-3.4.repo 

  

vim /etc/yum.repos.d/mongodb-org-3.4.repo  

按 i 进入编辑模式,输入一下内容:

1
2
3
4
5
6
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

 然后按Esc  按 :wq  保存并且推出vim

3 开始安装命令

1
yum install mongodb-org

4 出现 Complete! 字样 安装成功后 配置SELinux

1
setenforce 0

5 此时是可以启动mongo了

1
systemctl start mongod.service

 然后输入以下命令查看是否启动成功了

1
systemctl status mongod.service

 出现的结果中有  active(running)的字样代表启动成功

6 此时还不能用客户端连接成功,还需要防火墙配置  

如果是亚马逊的服务器,需要到亚马逊服务器管理平台上去设置27017端口

进入ec2管理面板,点击安全组,选择linux实例,点击下面的入站

然后在linux服务器直接关闭防火墙(我用的是做测试用的,其实不关闭防火墙 只需开放27017端口也行的)

1
2
systemctl disable firewalld  #永久关闭
systemctl stop firewalld    #暂时关闭 下次重启还有

设置开机启动

1
systemctl enable mongod.service

还需mongodb远程访问 编辑mongod.conf注释bindIp(bindIp前面加#),并重启mongodb. 

1
vim /etc/mongod.conf 

 

重新启动mongo

1
systemctl restart mongod.service

以下附上几个其它的命令 

1
#停止命令<br>systemctl start mongod
1
#删除安装包<br>yum erase $(rpm -qa | grep mongodb-org)
1
2
#删除数据目录 <br>rm -r /var/log/mongodb
rm -r /var/lib/mongo

7重启mongo后就可以直接用mongo客户端工具连接了,此时验证方式选择none

8 登录进去后就可以用客户端创建其它用户了,当然也可以直接用mongo shell操作

启动mongo shell

1
mongo

输入

1
use admin;<br>db.createUser({user:"jiang232",pwd:"jiang233",roles:["dbAdminAnyDatabase","readWriteAnyDatabase","root"]})

开启登录认证机制后,方可用用户名密码登录,否则得用7步骤的登录方式

1
vim /etc/mongod.conf
1
2
3
#追加上
security:
    authorization: "enabled"

然后重启mongo

1
2
#重启mongo服务
systemctl restart mongod

此时用客户端连接,用刚刚创建的超级管理员账号 jiang232  输入密码, 登录验证方式也变了。

 

到此mongo服务端已经完成创建,并客户端能够连接。

遇到的问题总结一下,主要是端口的问题,27017 端口开放需要3重设置,1亚马逊端配置,2配置SELinux   3关闭防火墙。

  

posted @   flyArmy  阅读(1389)  评论(2编辑  收藏  举报
编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示