Ubuntu 下 MongoDB 数据迁移步骤
一 方案选择
二 准备与版本匹配
mongodump --version。如使用旧版或未安装,可下载 .deb/.tgz 包安装并更新 PATH。迁移前确认网络、端口(默认 27017)、磁盘空间与权限配置。三 迁移步骤
mongodump --host <源主机> --port 27017 --username <用户> --password <密码> \
--authenticationDatabase admin --db <源库名> \
--out /var/backups/mongobackups/$(date +'%F')
如需压缩:--gzip;如需一致性(副本集):加 --oplog。mongodump --host <源主机> --port 27017 -u <用户> -p <密码> \
--authenticationDatabase admin --db <源库名> --archive | \
mongorestore --host <目标主机> --port 27017 -u <用户> -p <密码> \
--authenticationDatabase admin --archive
scp -r /var/backups/mongobackups/2025-11-27/<源库名> <目标用户>@<目标主机>:/tmp/
mongorestore --host <目标主机> --port 27017 -u <用户> -p <密码> \
--authenticationDatabase admin --dir /tmp/<源库名>
mongorestore --host <目标主机> --port 27017 -u <用户> -p <密码> \
--authenticationDatabase admin --db <目标库名> /tmp/<源库名>
如需先清空目标库再写入,可加 --drop(谨慎使用)。mongoexport --host <源主机> --port 27017 -u <用户> -p <密码> \
--authenticationDatabase admin --db <库名> --collection <集合名> \
--out /tmp/<集合名>.json
scp /tmp/<集合名>.json <目标用户>@<目标主机>:/tmp/
mongoimport --host <目标主机> --port 27017 -u <用户> -p <密码> \
--authenticationDatabase admin --db <目标库名> --collection <新集合名> \
/tmp/<集合名>.json
--authenticationMechanism=MONGODB-CR(新版 SCRAM-SHA-1 通常无需指定)。四 校验与常见问题
mongo --host <源主机> --eval "db.<集合名>.count()"
mongo --host <目标主机> --eval "db.<集合名>.count()"