在Debian系统上配置MongoDB数据存储涉及多个步骤,包括安装MongoDB、配置数据存储路径、设置权限以及性能优化等。以下是一些关键步骤和技巧:
首先,确保你的Debian系统是最新的:
sudo apt update && sudo apt upgrade -y
然后,导入MongoDB官方GPG密钥:
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
创建一个列表文件 /etc/apt/sources.list.d/mongodb-org-4.4.list:
echo "deb [ archamd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
更新包列表并安装MongoDB:
sudo apt update
sudo apt install -y mongodb-org
编辑MongoDB配置文件 /etc/mongod.conf:
sudo vim /etc/mongod.conf
确保以下配置项正确设置:
storage.dbPath: 指定数据文件的存储路径,例如:
storage:
dbPath: /var/lib/mongodb
systemLog.destination: 设置日志输出的目的地,例如:
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
net.port: 指定MongoDB服务器监听的端口号,例如:
net:
port: 27017
net.bindIp: 指定MongoDB服务器监听的IP地址,例如:
net:
bindIp: 0.0.0.0
启动MongoDB服务并设置为开机自启:
sudo systemctl start mongod
sudo systemctl enable mongod
连接到MongoDB shell以验证安装是否成功:
mongo
如果一切正常,您将看到MongoDB shell提示符。
索引优化:为经常用于查询的字段创建索引,以提高查询性能。
db.collection.createIndex({ field: 1 })
监控工具:使用 mongostat 和 mongotop 实时监控数据库性能。
配置WiredTiger缓存:调整 storage.wiredTiger.engineConfig.cacheSizeGB 参数。
storage:
wiredTiger:
engineConfig:
cacheSizeGB: 4
使用多个CPU内核:确保MongoDB能够利用多核CPU。
启用用户认证:在配置文件中添加 security.authorization: enabled。
创建管理用户:使用 mongo shell 创建具有适当角色的用户。
use admin
db.createUser({
user: "myUserAdmin",
pwd: "myPassword",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})
使用 mongodump 和 mongorestore 工具进行数据备份和恢复。
mongodump --db database1 --out backup
mongorestore /path/to/backup