CentOS 7自定义安装MongoDB,并设置为开机启动服务

一、MongoDB简介

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

二、下载MongDB并解压

官网地址:https://www.mongodb.com/download-center/community
CentOS 7自定义安装MongoDB,并设置为开机启动服务_第1张图片
下载安装包到/roo/install目录

mkdir /root/install && wget -P /root/install https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.16.tgz

将安装包解压到/usr目录下,并将文件夹名称修改为mongodb

tar zxvf /root/install/mongodb-linux-x86_64-4.0.16.tgz -C /usr && mv /usr/mongodb* /usr/mongodb

三、配置环境变量

配置环境变量

vi /etc/profile

进入编辑状态后,在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL的上面添加如下内容后保存退出:

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

使用以下命令让环境变量生效

source /etc/profile

四、创建配置文件和日志文件

创建数据库和日志存放目录,文件夹权限是777

cd /usr/mongodb && mkdir -m 777 data log

创建配置文件和日志文件

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

五、添加配置文件内容

vi mongodb.conf

进入vi,按i键进入编辑状态后,将以下内容粘贴进去

port=27017
#设置端口
dbpath=/usr/mongodb/data
#数据库存文件存放目录
logpath=/usr/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键退出编辑状态,然后按住shift键,连续按两下z键保存退出。

六、创建服务

创建服务文件:

echo "[Unit]
Description=mongodb server
After=network.target
Wants=network.target

[Service]
Type=forking
PIDFile=/var/run/mongod.pid
ExecStart=/usr/mongodb/bin/mongod --config /usr/mongodb/mongodb.conf
RestartPreventExitStatus=23
Restart=always
User=root

[Install]
WantedBy=multi-user.target
" > '/etc/systemd/system/mongod.service'

服务文件说明:
[Unit]:服务的说明
Description:描述服务
After:描述服务类别
[Service]设置服务运行参数
Type设置进程的启动类型
ExecStart设置服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3

设置是否开机启动:

systemctl enable mongod.service
#设置开机启动
systemctl disable mongod.service
#停止开机启动

服务相关命令:

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

创建PID文件:

  • 程序运行时可以指定创建进程pid文件,里面记录着该程序的进程PID。主要用来防止重复启动、查看进程状态、进程启动、进程重启、查看状态等。一般程序的配置文件可以指定存储这个pid文件的位置。如果没有那么默认存储在/var/run目录下。
  • 服务运行后使用以下命令获取PID并创建文件,创建后,需重新载入服务。
  • 获取PID:ps -ef | grep mongod
  • 使用vi命令将PID写入到mongod.pid

七、防火墙设置

CentOS7默认使用的防火墙是firewall,我们需要开放防火墙端口或者关闭防火墙。

开放防火墙端口:

firewall-cmd --permanent --add-port=27017/tcp
#开放27017端口
firewall-cmd --reload
#修改配置后需要重启防火墙
firewall-cmd --query-port=27017/tcp
#查询27017端口是否开放

关闭防火墙:

systemctl stop firewalld.service
#停止防火墙
systemctl disable firewalld.service
#禁止防火墙开机启动

你可能感兴趣的:(CentOS)