在 Debian 上迁移 MongoDB,常见有同机/跨机、同版本/跨版本、物理文件迁移/逻辑备份迁移几种方式。下面给你一套最常用、最稳妥的做法。
mongod --version
或
mongo --version
如果是生产环境:
mongodump --out=/data/mongo_backup
指定用户密码:
mongodump -u admin -p password --authenticationDatabase admin --out=/data/mongo_backup
scp -r /data/mongo_backup user@new_server:/data/
参考官方源:
apt install -y mongodb-org
mongorestore /data/mongo_backup
带权限恢复:
mongorestore -u admin -p password --authenticationDatabase admin /data/mongo_backup
✅ 优点:跨版本、跨磁盘结构都安全
❌ 缺点:大数据量较慢
systemctl stop mongod
默认路径:
/var/lib/mongodb
scp -r /var/lib/mongodb user@new_server:/var/lib/
systemctl stop mongod
rm -rf /var/lib/mongodb
mv /data/mongodb /var/lib/mongodb
chown -R mongodb:mongodb /var/lib/mongodb
systemctl start mongod
✅ 优点:快
❌ 风险:版本不一致直接起不来
不能硬盘直接拷!
正确做法:
mongodumpmongorestoredb.adminCommand({ setFeatureCompatibilityVersion: "6.0" })
mongo
show dbs
use your_db
db.stats()
检查:
chown -R mongodb:mongodb /var/lib/mongodb
看日志:
journalctl -u mongod
mongodump --gzip如果你愿意,可以告诉我:
我可以给你精确命令方案。