Debian MongoDB数据迁移指南
一、常用迁移方案
-
mongodump/mongorestore(推荐)
- 备份源数据:
mongodump --host <源主机> --port <端口> --db <数据库名> --out /备份路径 - 恢复到目标:
mongorestore --host <目标主机> --port <端口> --db <目标库名> /备份路径/<数据库名> - 迁移特定集合:
mongodump -d <库名> -c <集合名> --out /备份路径
mongorestore -d <目标库名> -c <集合名> /备份路径<库名>/<集合名>.bson
- 备份源数据:
-
物理文件迁移(需停机)
- 停止源MongoDB服务:
sudo systemctl stop mongod - 同步数据文件:
sudo rsync -avz /var/lib/mongodb/ /目标路径/ - 修改目标配置文件(
/etc/mongod.conf)中的数据目录路径,重启服务。
- 停止源MongoDB服务:
-
第三方工具
- MongoShake:支持增量迁移和跨版本同步。
- Robo3T/Compass:图形化界面操作,适合小规模迁移。
二、关键注意事项
- 版本兼容性:确保源与目标MongoDB版本兼容,跨大版本需先升级。
- 数据一致性:迁移前备份数据,迁移中暂停写入(如使用复制集)。
- 权限配置:检查目标服务器的MongoDB用户权限,确保可访问。
- 性能影响:大数据量迁移建议分批处理,避免阻塞生产环境。
三、验证与测试
- 连接目标数据库,使用
db.collection.find()核对数据完整性。 - 更新应用程序配置中的数据库连接信息,测试功能正常。
参考来源: