Linux Centos7安装mongodb并设置开机启动


系统信息:CentOS Linux release 7.6.1810 (Core)

mongodb官网获取mongodb的下载地址:https://www.mongodb.com/try/download/community


MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

安装mongo

1、进入目录/opt下载MongoDB2.64

cd /opt
 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz

2、进入目录/usr/src 下载MongoDB2.64 并重命名文件

tar -zxvf  mongodb-linux-x86_64-4.0.0.tgz
mv mongodb-linux-x86_64-4.0.0.tgz mongodb-4.0.0

3、创建数据库和日志的目录

MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以你需要手动创建data目录,并在data目录中创建db目录。

以下实例中我们将data目录创建于根目录下(/)。

注意:/data/db 是 MongoDB 默认的启动的数据库路径(--dbpath)。

注意:如果你的数据库目录不是/data/db,可以通过 --dbpath 来指定。

mkdir logs
cd logs
touch mongodb.log

mkdir data
cd data
mkdir db

4、配置mongodb配置文件

#没有的话就先创建 
vim mongodb.conf

#添加以下内容
#可外部访问
bind_ip=0.0.0.0
#端口
port = 27017
# 数据库文件存放路径
dbpath = /opt/mongodb-4.0.0/data/db
# 日至文件存放路径
logpath = /opt/mongodb-4.0.0/logs/mongodb.log
# 使用追加的方式写日志              
logappend = true
# 以守护进程的方式运行,创建服务器进程         
fork = true
# 最大同时连接数            
maxConns = 100
# 不启用验证
noauth = true
# 每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。            
journal = true

5、配置环境变量,方便后续的命令行操作

设置临时环境变量,重启电脑后就没有了

export PATH=$PATH:/opt/mongodb-4.0.0/bin

设置永久环境变量

vim /etc/profile

在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下内容:

export PATH=/opt/mongodb-4.0.0/bin:$PATH

保存后通过下面的命令使环境变量生效:

 source /etc/profile

测试环境变量是否添加成功:

mongo -version

显示mongo版本就表示设置成功


启动mongodb

/opt/mongodb-4.0.0/bin/mongod --config /opt/mongodb-4.0.0/mongodb.conf 
#或
/opt/mongodb-4.0.0/bin/mongod -f /opt/mongodb-4.0.0/mongodb.conf

返回显示如下内容:

about to fork child process, waiting until server is ready for connections.
forked process: 4623
child process started successfully, parent exiting

查看是否启动

ps aux |grep mongodb
#或
netstat -tulnp | grep mongo

使用system管理mongo服务设置开机启动

首先创建mongodb.service文件,并编辑

vim /lib/systemd/system/mongodb.service

添加如下内容:

[Unit]  
  
Description=mongodb   
After=network.target remote-fs.target nss-lookup.target  
  
[Service]  
Type=forking  
ExecStart=/opt/mongodb-4.0.0/bin/mongod --config /opt/mongodb-4.0.0/mongodb.conf 
ExecReload=/bin/kill -s HUP $MAINPID  
ExecStop=/opt/mongodb-4.0.0/bin/mongod  --shutdown --config  /opt/mongodb-4.0.0/mongodb.conf 
PrivateTmp=true  
    
[Install]  
WantedBy=multi-user.target 

启动服务

systemctl start mongodb.service    

关闭服务

systemctl stop mongodb.service    

开机启动

systemctl enable mongodb.service

查看|重启|关闭mongo服务shell脚本

#! /bin/bash
#chkconfig: 345 63 37
#description: mongod
#processname: mongod-4.4.4

export MG_HOME=/opt/mongodb-4.0.0/

case $1 in
        start)
                cd $MG_HOME
                ./bin/mongod -f /opt/mongodb-4.0.0/mongodb.conf
                exit
!
                echo "mongod is started"
                ;;
        stop)
                pid=`cat $MG_HOME/pid`
                kill -9 $pid
                echo "mongod is stopped"
                ;;
        restart)
                pid=`cat $MG_HOME/pid`
                kill -9 $pid
                echo "mongod is stopped"
                sleep 1
                cd $MG_HOME
                ./bin/mongod
                exit
!
                echo "mongod is started"
        ;;
    *)
        echo "start|stop|restart"
        ;;
esac
exit 0
从小白到大神的蜕变~~
原文地址:https://www.cnblogs.com/tjw-bk/p/15128104.html