CentOS 二进制安装部署MongoDB 4.0

一、安装MongoDB

1. 下载 MongoDB 二进制文件

前往 MongoDB 官方下载页面(https://www.mongodb.com/try/download/community) 选择对应版本的 tar 包。

复制代码
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.28.tgz

2. 解压并移动至目标目录

解压文件:

bash 复制代码
tar -xvzf mongodb-linux-x86_64-4.0.28.tgz

将解压后的文件移动至 `/usr/local/mongodb`:

bash 复制代码
sudo mv mongodb-linux-x86_64-4.0.28 /usr/local/mongodb
cd /usr/local/mongodb

3. 配置环境变量

编辑环境变量文件:

bash 复制代码
sudo vi ~/.bash_profile

添加以下内容:

bash 复制代码
export PATH=$PATH:/usr/local/mongodb/bin

刷新环境变量:

bash 复制代码
source ~/.bash_profile

验证:

bash 复制代码
mongo --version

  1. 创建数据和日志目录

为 MongoDB 创建必要的目录:

bash 复制代码
sudo mkdir -p /data/mongodb/log /data/mongodb/data /var/run/mongodb

5. 配置 MongoDB

在数据目录中创建配置文件:

bash 复制代码
sudo vi /data/mongodb/mongod.conf

写入以下内容:

bash 复制代码
# mongod.conf

# 日志配置
systemLog:
  destination: file
  logAppend: true
  path: /data/mongodb/log/mongod.log
 
# 数据存储配置
storage:
  dbPath: /data/mongodb/data
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:
 
# 进程管理
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo
 
# 网络配置
net:
  port: 27017
  bindIp: 0.0.0.0  
 
# 安全配置 
security:
  authorization: "enabled"
 

6. 启动 MongoDB 服务

使用配置文件启动 MongoDB:

bash 复制代码
/usr/local/mongodb/bin/mongod --config /data/mongodb/mongod.conf

7. 配置为系统服务

编辑服务文件:

bash 复制代码
sudo vi /lib/systemd/system/mongod.service

写入以下内容:

bash 复制代码
[Unit]
Description=MongoDB Database Server
Documentation=https://docs.mongodb.org/manual
After=network.target
 
[Service]
User=root
Group=root
Environment="OPTIONS=-f /data/mongodb/mongod.conf"
ExecStart=/usr/local/mongodb/bin/mongod $OPTIONS
ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb
ExecStartPre=/usr/bin/chown root:root /var/run/mongodb
ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb
PermissionsStartOnly=true
PIDFile=/var/run/mongodb/mongod.pid
Type=forking
 
[Install]
WantedBy=multi-user.target

保存并启用服务:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl enable mongod.service
sudo systemctl start mongod.service

验证服务状态:

bash 复制代码
sudo systemctl status mongod.service

8. 配置用户认证

创建用户

进入 MongoDB Shell:

bash 复制代码
mongo

创建管理员用户:

bash 复制代码
use admin
db.createUser({ user: "root", pwd: "123456", roles: ["root"] })

重启服务:

bash 复制代码
sudo systemctl restart mongod

9.登录验证

验证管理员用户:

bash 复制代码
use admin
db.auth("root", "123456")

日常操作

bash 复制代码
#启动服务

sudo systemctl start mongod

#停止服务

sudo systemctl stop mongod

#查看日志
tail -f /data/mongodb/log/mongod.log

二、搭建mongo副本集

通过搭建 MongoDB 副本集,主要有以下优势:

  • 高可用性和故障恢复:主节点故障时,从节点自动接管,确保系统持续可用。
  • 数据冗余:多个节点存储数据副本,保障数据安全。
  • 读写分离和扩展性:优化性能,支持水平扩展。
  • 灵活部署:支持跨区域部署和分布式事务。

副本集是 MongoDB 的核心特性,适用于需要高可靠性和高可用性的生产环境。

搭建步骤:

相关推荐
虾..1 小时前
Linux 软硬链接和动静态库
linux·运维·服务器
Evan芙1 小时前
Linux常见的日志服务管理的常见日志服务
linux·运维·服务器
hkhkhkhkh1233 小时前
Linux设备节点基础知识
linux·服务器·驱动开发
HZero.chen4 小时前
Linux字符串处理
linux·string
张童瑶4 小时前
Linux SSH隧道代理转发及多层转发
linux·运维·ssh
汪汪队立大功1234 小时前
什么是SELinux
linux
石小千4 小时前
Linux安装OpenProject
linux·运维
柏木乃一5 小时前
进程(2)进程概念与基本操作
linux·服务器·开发语言·性能优化·shell·进程
Lime-30905 小时前
制作Ubuntu 24.04-GPU服务器测试系统盘
linux·运维·ubuntu
百年渔翁_肯肯5 小时前
Linux 与 Unix 的核心区别(清晰对比版)
linux·运维·unix