在Debian系统上配置MongoDB涉及多个步骤,包括安装、配置服务、验证安装以及可选的复制集配置。以下是详细的步骤:
安装MongoDB- 更新系统:
sudo apt update && sudo apt upgrade -y
- 导入MongoDB公钥:
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
- 创建MongoDB列表文件:对于Debian 11(Bullseye):
echo "deb [archamd64,arm64] https://repo.mongodb.org/apt/debian bullseye/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
对于Debian 10(Buster):
echo "deb [archamd64,arm64] https://repo.mongodb.org/apt/debian buster/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
- 更新包列表并安装MongoDB:
sudo apt updatesudo apt install -y mongodb-org
- 启动MongoDB服务:
sudo systemctl start mongod
- 设置MongoDB服务开机自启:
sudo systemctl enable mongod
- 验证安装:
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
配置MongoDB- 编辑配置文件:
sudo vim /etc/mongod.conf
- 基本配置:
storage.dbPath
:指定MongoDB的数据存储目录。systemLog.destination
:指定日志文件的存储路径。net.port
:指定MongoDB监听的端口。net.bindIp
:指定MongoDB绑定的IP地址,允许远程连接时设置为0.0.0.0
。- 启用安全性和用户认证:
security:authorization: enabled
- 创建管理用户:
use admindb.createUser({user: "myUserAdmin",pwd: "myPassword",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
- 保存并退出编辑器,然后重启MongoDB服务以应用更改:
sudo systemctl restart mongod
性能优化调整内存配置:storage:wiredTiger:engineConfig:cacheSizeGB: 4# 根据服务器内存调整
网络配置:net:maxIncomingConnections: 200# 根据需要调整
索引优化:为经常查询的字段创建索引:db.collection.createIndex({ field: 1 })
查询优化:使用投影限制返回字段:db.collection.find({ field: 1 }, { _id: 0 })
监控和诊断:使用mongostat
和mongotop
监控数据库性能。