说明:
服务器系统为centos8.3
使用宝塔面板进行相关操作
可以自定义目录
到官网复制下载的路径
在你准备好的目录下运行终端命令
wget https://repo.mongodb.org/yum/redhat/8/mongodb-org/5.0/x86_64/RPMS/mongodb-org-server-5.0.4-1.el8.x86_64.rpm
下载完成后目录里将会多出一个:
mongodb…xxx.rpm的文件
宝塔视角:
安装前我们需要安装各个 Linux 平台依赖包。
Red Hat/CentOS:
sudo yum install libcurl openssl
Ubuntu 18.04 LTS (“Bionic”)/Debian 10 “Buster”:
sudo apt-get install libcurl4 openssl
Ubuntu 16.04 LTS (“Xenial”)/Debian 9 “Stretch”:
sudo apt-get install libcurl3 openssl
上面的bash命令按照自己服务器对应的系统选择
在mongodb…xxx.rpm文件的同级目录下运行bash
rpm -ivh mongodb-org-server-5.0.4-1.el8.x86_64.rpm
查看安装路径
rpm -ql xxx #xxx代表你的包名
rpm -ql mongodb-org-server-5.0.4-1.el8.x86_64
一些命令:
rpm -ql 包名 # 查询包中文件安装位置:
rpm -q 包名 # 查询包是否安装
rpm -qa # 查询所有已经安装的RPM包
rpm -qi 包名 -i # 查询软件信息(information)
-p # 查询未安装包信息(package)
编辑配置文件:
vim /etc/mongod.conf
按 i 进入编辑,编辑完安 ESC退出,输入 :wq 保存并退出
基本配置
#数据库数据存放目录
dbpath=/usr/local/mongodb304/data
#数据库日志存放目录
logpath=/usr/local/mongodb304/logs/mongodb.log
#以追加的方式记录日志
logappend = true
#端口号 默认为27017
port=27017
#以后台方式运行进程
fork=true
#开启用户认证
auth=true
#关闭http接口,默认关闭http端口访问
nohttpinterface=true
#mongodb所绑定的ip地址
bind_ip = 127.0.0.1
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
启动MongoDB
bash命令:
/usr/bin/mongod -f /etc/mongod.conf
查看是否运行成功
bash命令:
netstat -ntlp
a、在云服务器上开启端口 27017或自定义的端口
b、通过以下下方式再次配置(大体上 按顺序粘贴代码是可以的,稍加理解)
27017是默认端口,可自定义
1 切换到root用户,并输入命令:firewall-cmd --query-port=27017/tcp 确认端口是否开放
返回no
可以看出,端口27017并没有对外开放
2 输入命令: firewall-cmd --get-active-zones 拿到zone名称
3 输入命令:firewall-cmd --zone=public --add-port=27017/tcp --permanent
永久开放27017端口
4 输入命令:firewall-cmd --reload ,重启防火墙
5 再次查看端口是否开放了:firewall-cmd --query-port=27017/tcp
可以看到返回yes,表明端口开放成功
在防火墙中设置27017开启远程服务;
在 CentOS 7与8下执行 service iptables save 命令,出现如下错误:
[root@test ~]# service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
systemctl stop firewalld
systemctl mask firewalld
在 CentOS 7 和 RHEL 7 中,没有 /etc/sysconfig/iptables 这个配置文件,也不能执行 service iptables restart 命令,需要通过安装 iptables-services 才有。(centos8也同上)
[root@test ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
[root@test ~]# rpm -qa|grep iptables
iptables-1.4.21-28.el7.x86_64
[root@test ~]# yum -y install iptables-services
然后就可以使用 service iptables [start | stop | restart | save …] 命令。
systemctl unmask firewalld
systemctl restart firewalld.service
这里应该使用 systemctl start firewalld.service
启动、关闭、重启防火墙服务。
systemctl start firewalld.service
systemctl stop firewalld.service
systemctl restart firewalld.service
查看已启动的服务列表。
systemctl list-unit-files|grep enabled
查看所有打开的端口。
firewall-cmd --zone=public --list-ports
重新载入,更新防火墙规则。
firewall-cmd --reload
开启80端口,–permanent永久生效,没有此参数重启后失效。
firewall-cmd --zone=public --add-port=80/tcp --permanent
查看80端口是否开放。
firewall-cmd --zone=public --query-port=80/tcp
删除80端口配置。
firewall-cmd --zone=public --remove-port=80/tcp --permanent
在防火墙中设置27017开启远程服务;
/sbin/iptables -I INPUT -p tcp --dport 27017 -j ACCEPT
保存
service iptables save
查看
netstat -ntlp
robot3t(免费)官网:https://robomongo.org/
通过上传压缩包的方式
https://www.runoob.com/mongodb/mongodb-linux-install.html
笔者在使用此种方式在centos8云服务器上操作时碰壁太多,于是改用上述方式
希望对你有所帮助,感谢你的阅读。