Linux云服务器搭建MongoDB数据库完整指南
在当今数据驱动的时代,MongoDB作为领先的NoSQL数据库解决方案,因其灵活性和可扩展性而广受欢迎。本文将详细介绍如何在Linux云服务器上搭建MongoDB数据库环境,帮助开发者快速部署专业的数据库服务。
一、环境准备
1.1 服务器配置要求
建议使用以下配置的云服务器:
- 操作系统:Ubuntu 20.04 LTS/CentOS 8
- 内存:至少2GB(生产环境建议4GB以上)
- 存储:SSD硬盘,至少20GB可用空间
- 网络:稳定的网络连接
1.2 基础环境检查
# 更新系统包
sudo apt update && sudo apt upgrade -y # Ubuntu/Debian
sudo yum update -y # CentOS/RHEL
# 检查系统版本
cat /etc/os-release
# 检查内存和存储
free -h
df -h
二、安装MongoDB
2.1 Ubuntu系统安装
# 导入MongoDB公钥
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
# 创建源列表文件
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
# 更新并安装
sudo apt update
sudo apt install -y mongodb-org
2.2 CentOS系统安装
# 创建repo文件
cat <
三、配置与优化
3.1 基本配置调整
编辑配置文件 /etc/mongod.conf:
# 绑定所有IP(生产环境应限制)
net:
port: 27017
bindIp: 0.0.0.0
# 安全配置
security:
authorization: enabled
# 存储引擎配置
storage:
journal:
enabled: true
dbPath: /var/lib/mongo
engine: wiredTiger
3.2 性能优化建议
- 根据服务器内存调整
wiredTigerCacheSizeGB - 启用zstd压缩节省存储空间
- 配置适当的副本集提高可用性
四、安全设置
4.1 创建管理员账户
# 启动服务
sudo systemctl start mongod
sudo systemctl enable mongod
# 连接MongoDB
mongo
# 创建管理员
use admin
db.createUser({
user: "admin",
pwd: "strongpassword",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})
4.2 防火墙配置
# Ubuntu
sudo ufw allow 27017/tcp
sudo ufw enable
# CentOS
sudo firewall-cmd --permanent --add-port=27017/tcp
sudo firewall-cmd --reload
五、日常维护
5.1 备份与恢复
# 备份数据库
mongodump --host localhost --port 27017 --username admin --password "password" --authenticationDatabase admin --db yourdb --out /backup/
# 恢复数据库
mongorestore --host localhost --port 27017 --username admin --password "password" --authenticationDatabase admin /backup/yourdb/
5.2 监控与日志
建议配置:
- 启用MongoDB Atlas免费监控
- 设置日志轮转
- 定期检查慢查询
通过以上步骤,您已经在Linux云服务器上成功搭建了MongoDB数据库环境。建议进一步学习副本集和分片配置以满足生产环境的高可用需求。定期更新MongoDB版本以获取安全补丁和新功能。
