在Linux云服务器上安装和配置MongoDB的完整指南
MongoDB作为当前最流行的NoSQL数据库之一,凭借其高性能、高可用性和易扩展的特点,已成为许多云应用的首选数据库解决方案。本文将详细介绍如何在Linux云服务器上安装和配置MongoDB,包括社区版安装、基本配置和安全设置等重要内容。
一、准备工作
在开始安装前,我们需要确保服务器满足以下条件:
- 运行主流Linux发行版(如Ubuntu 20.04/22.04或CentOS 7/8)
- 具有root或sudo权限的用户
- 至少2GB内存(生产环境建议4GB以上)
- 10GB以上可用磁盘空间
- 已配置SSH远程连接
二、安装MongoDB社区版
对于Ubuntu/Debian系统:
# 导入MongoDB公钥
sudo apt-get install gnupg
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
# 创建源列表文件
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -sc)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
# 更新包管理器并安装
sudo apt-get update
sudo apt-get install -y mongodb-org
对于CentOS/RHEL系统:
# 创建repo文件
cat <
三、基本配置
安装完成后,我们需要对MongoDB进行基本配置:
- 启动MongoDB服务:
sudo systemctl start mongod - 设置开机自启:
sudo systemctl enable mongod - 验证服务状态:
sudo systemctl status mongod - 连接到MongoDB shell:
mongosh
四、安全配置
生产环境中必须配置MongoDB的安全选项:
- 启用访问控制:
# 编辑配置文件 sudo nano /etc/mongod.conf # 在security部分添加 security: authorization: enabled - 创建管理员用户:
mongosh use admin db.createUser({ user: "admin", pwd: "yourStrongPassword", roles: ["root"] }) - 重启服务使配置生效:
sudo systemctl restart mongod
五、性能优化
针对云服务器环境,我们可以进行以下优化:
- 配置适当的存储引擎(WiredTiger)
- 调整内存使用限制
- 设置日志轮转
- 配置副本集提高可用性
- 启用定期备份
六、防火墙配置
确保MongoDB端口(默认27017)的安全:
# 对于UFW防火墙
sudo ufw allow 27017/tcp
# 对于firewalld
sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload
七、常见问题解决
- 服务无法启动:检查/var/log/mongodb/mongod.log中的错误日志
- 连接被拒绝:确认防火墙设置和bindIp配置
- 认证失败:确认用户名密码正确且角色配置无误
通过以上步骤,我们成功在Linux云服务器上安装并配置了MongoDB数据库。建议定期更新MongoDB版本以获取安全补丁和新功能,同时根据实际业务需求调整配置参数。对于生产环境,还应考虑设置副本集或分片集群以提高可用性和扩展性。
