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