MongoDB安装

官网

1.下载MongoDB

wget  https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-6.0.1.tgz
  • 说明:一定要选择对系统版本,因为下载的包为二进制包,可以直接运行的

2.解压并改路径

tar zxf mongodb-linux-x86_64-rhel80-6.0.1.tgz -C /usr/local
mv /usr/local/mongodb-linux-x86_64-rhel80-6.0.1  /usr/local/mongodb

3.定义PATH

vi /etc/profile.d/mongedb.sh  ##增加或者修改
export PATH=$PATH:/usr/local/mongodb/bin
#使环境变量生效
source /etc/profile.d/mongedb.sh

4.编辑配置文件

mkdir  /usr/local/mongodb/{conf,logs}
mkdir  -p /data/mongodb
vi /usr/local/mongodb/conf/mongodb.conf  #添加如下内容,注意有缩进
systemLog:
  #MongoDB发送所有日志输出的目标指定为文件
  destination: file
  #mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
  path: "/usr/local/mongodb/logs/mongodb.log"
  #当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾
  logAppend: true
storage:
  #mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod
  dbPath: "/data/mongodb"
  journal:
    #启用或禁用持久性日志以确保数据文件保持有效和可恢复。
    enabled: true
processManagement:
  #启用在后台运行mongos或mongod进程的守护进程模式。
  fork: true
  #指定用于保存mongos或mongod进程的进程ID的文件位置,其中mongos或mongod将写入其PID
  pidFilePath: "/usr/local/mongodb/logs/mongod.pid"
  #从中加载时区数据库的完整路径
  timeZoneInfo: /usr/share/zoneinfo
net:
  #服务实例绑定所有IP,有副作用,副本集初始化的时候,节点名字会自动设置为本地域名,而不是ip
  #bindIpAll: true
  #服务实例绑定的IP,0.0.0.0让所有机器都能连接。
  bindIp: 0.0.0.0
  #bindIp
  #绑定的端口
  port: 27017

5.编辑systemd服务管理脚本

vi  /lib/systemd/system/mongodb.service #写入如下内容
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target

[Service]
User=mongodb
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/conf/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

6.创建用户,修改权限

useradd -s /sbin/nologin  mongodb
chown -R mongodb /data/mongodb  /usr/local/mongodb

7.启动服务

systemctl daemon-reload
systemctl start mongodb
systemctl enable mongodb

8.检测

ps aux |grep mongo
netstat -lntp |grep 27017