zl程序教程

您现在的位置是:首页 >  系统

当前栏目

linux(CentOS)下安装mongodb

2023-09-27 14:25:57 时间
前言

在mongodb的官网中有linux各个系统的安装配置说明

docs.mongodb.com/master/admi…

本文以CentOS RedHat 为例

docs.mongodb.com/master/tuto…

结合官方说明 并加以补充。


配置yum

首先需要配置mongo的yum 这样才能用yum进行安装

创建 /etc/yum.repos.d/mongodb-org-3.2.repo 并添加内容


[mongodb-org-3.2]

name MongoDB Repository

baseurl https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/

gpgcheck 1

enabled 1

gpgkey https://www.mongodb.org/static/pgp/server-3.2.asc

复制代码


安装mongo

配置好yum后 就可以通过yum按照mongo了


sudo yum install -y mongodb-org

复制代码


这时如果出现Could not resolve host: repo.mongodb.org; Unknown error这样的错误 是因为访问国外的网站不稳定 重试即可。


配置防火墙

还需要禁用SELinux和配置防火墙 否则无法访问

如果没有 semanage需要先安装


yum -y install policycoreutils-python

复制代码


然后配置防火墙开放27017端口


semanage port -a -t mongod_port_t -p tcp 27017

复制代码


最后关闭SELinux 修改/etc/selinux/config文件


SELINUX disabled

复制代码


启动Mongo

安装完成后自动生成mongo的配置文件/etc/mongod.conf 在其中可以查看数据库地址和日志地址。默认数据库路路径/var/lib/mongo 默认日子路径/var/log/mongodb/mongod.log

我们也可以自己重新配置 mongod.conf内容如下


#processManagement:

# fork: true

 bindIp: 127.0.0.1

 port: 27017

storage:

 dbPath: /mnt/mongo

systemLog:

 destination: file

 path: /mnt/mongodb/mongodb.log 

 logAppend: true

storage:

 journal:

 enabled: true

复制代码


修改dbPath和systemLog下的path即可。

然后启动Mongo服务

sudo service mongod start

也可以直接通过mongo命令启动 如下


/usr/bin/mongod -dbpath /mnt/mongo -logpath /mnt/mongodb/mongodb.log -logappend -port 27017 -fork --maxConns 20000 --bind_ip 127.0.0.1 --wiredTigerCacheSizeGB 0.2

复制代码


注意 这条命令后面加上--bind_ip 127.0.0.1 这样可以禁止外网访问 如果不加默认外网是可以访问的 这样如果没有启动账号密码验证 很容易被攻击。但是如果想外网访问 就不能加 那样就最好启动账号密码验证预防攻击。


连接数据库

在终端中执行mongo 如果进入数据库 即表示安装启动成功。




如何在 RHEL 8 或者 CentOS 8 上安装 MongoDB? MongoDB 是一个可扩展的、开源的、高性能的、面向文档的NoSQL 数据库,它由10gen开发和支持,NoSQL 统计 MongoDB 不使用表和行。
CentOS 部署 MongoDB 安装 MongoDB # 下载官方最新版(2018/11/29)到 src 目录。 $ cd /usr/local/src $ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.9.tgz # 解压安装包。
参考centos安装mogodb3.6进行了安装 安装完成之后输入 http//xxx.cn:27017,发现无法访问,在腾讯云安全组添加了27017端口后并关闭了防火墙(systemctl stop firewalld) 之后就可以访问了...