如何在CentOS 7上安装MongoDB 4

时间:2020-02-23 14:30:47  来源:igfitidea点击:

在本指南中,我们将介绍在CentOS 7服务器上安装最新版本的MongoDB社区版的步骤。 MongoDB是用C ++编写的开源NoSQL数据库系统,旨在确保可伸缩性,高性能和可用性。

MongoDB的常见用例是存储和管理大数据大小的文字文档集合,例如文本文档,电子邮件,XML文档以及许多其他文档。

如何在CentOS 7上安装MongoDB 4

MongoDB 4使用上游存储库安装在CentOS 7上。通过运行以下命令将存储库添加到CentOS 7服务器:

# cat >/etc/yum.repos.d/mongodb-org-4.0.repo<<EOF
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
EOF

添加仓库后,安装mongodb-orgpackage

sudo yum install mongodb-org

上述软件包的安装将安装以下依赖项软件包:

mongodb-org-server这提供MongoDB守护程序mongod
mongodb-org-mongos这是一个MongoDB Shard守护程序
mongodb-org-shell这为MongoDB提供了一个shell
mongodb-org-tools用于导出,转储和导入等的MongoDB工具

在CentOS 7上配置MongoDB

安装软件包后,我们可以在启动服务之前开始自定义和配置MongoDB。

标签MongoDB端口

如果SELinux处于强制模式,则可能需要标记端口" 27017"

sudo semanage port -a -t mongod_port_t -p tcp 27017

在防火墙上打开端口

如果服务器上运行了防火墙,并且希望可以通过网络访问MongoDB服务,请在防火墙上将其打开:

sudo firewall-cmd --add-port=27017/tcp --permanent
sudo firewall-cmd --reload

我们还可以根据源地址限制访问

sudo firewall-cmd --permanent --add-rich-rule "rule family="ipv4" \
source address="10.1.2.0/24" port protocol="tcp" port="27017" accept"

使用辅助磁盘存储MongoDB数据

我们始终可以使用专用磁盘/虚拟磁盘来存储MongoDB数据。可以像下面这样配置

:为MongoDB数据分区辅助磁盘:

# lsblk  | grep vdb
vdb             252:16   0  50G  0 disk

:为辅助磁盘创建GPT分区表,它可以比onde磁盘更多

parted -s -a optimal -- /dev/vdb mklabel gpt
parted -s -a optimal -- /dev/vdb mkpart primary 0% 100%
parted -s -- /dev/vdb align-check optimal 1

:创建LVM卷,这将使扩展分区变得容易

# pvcreate  /dev/vdb1
  Physical volume "/dev/vdb1" successfully created.

# vgcreate vg11 /dev/vdb1
  Volume group "vg11" successfully created

# lvcreate -n data -l 100%FREE vg11
Logical volume "data" created

第4步:在创建的逻辑卷上创建XFS文件系统

# mkfs.xfs /dev/mapper/vg11-data
meta-data=/dev/mapper/vg11-data isize=512    agcount=4, agsize=6553344 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=26213376, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=12799, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

:创建安装点并安装分区

echo "/dev/mapper/vg11-data /data xfs defaults 0 0" >> /etc/fstab
mkdir /data
mount -a

:为MongoDB资料建立资料夹

mkdir /data/mongo
chown -R mongod:mongod /data/mongo
chmod -R 775 /data/mongo

:确认分区安装成功:

# df -hT | grep  /var/lib/mongo
/dev/mapper/vg11-mongodb xfs        50G   33M   50G   1% /var/lib/mongo

:更改MongoDB数据存储位置

$sudo vim /etc/mongod.conf
storage:
dbPath: /data/mongo 
journal:
  enabled: true

启动MongoDB服务

设置全部后,启动并设置mongod服务以在引导时启动。

sudo systemctl enable mongod
sudo systemctl status mongod

对于身份验证,请查看有关如何配置MongoDB 4身份验证的指南。