温馨提示×

怎么迁移Debian的MongoDB

小樊
37
2026-07-18 09:46:41
栏目: 云计算

下面给你一份从 Debian 系统迁移 MongoDB 的完整思路与操作步骤,适用于同版本迁移升级迁移,涵盖数据迁移服务迁移两种常见场景。


一、迁移前准备

1. 确认当前 MongoDB 信息

mongod --version
mongo --version        # 如果是 4.4 及以下
mongosh --version      # 如果是 5.0+

查看数据目录和配置:

cat /etc/mongod.conf

重点关注:

  • storage.dbPath
  • systemLog.path
  • net.port

2. 备份数据(强烈建议)

mongodump --out /backup/mongo-$(date +%F)

如果是 Docker:

docker exec mongo mongodump --out /backup

二、迁移方式选择

✅ 方式一:逻辑迁移(推荐,最安全)

适合:跨机器、升级版本、不同架构

1. 导出数据

mongodump --host 127.0.0.1 --port 27017

2. 拷贝到新服务器

scp -r dump user@new_server:/data/mongo/

3. 新服务器安装 MongoDB(Debian)

sudo apt update
sudo apt install -y mongodb-org

如果版本不同,请使用官方 MongoDB APT 源

4. 导入数据

mongorestore /data/mongo/dump

优点

  • 安全
  • 可跨版本
  • 可选择性迁移数据库

缺点

  • 大数据量时较慢

✅ 方式二:物理文件迁移(最快)

适合:同版本 MongoDB、同架构

1. 停止 MongoDB

sudo systemctl stop mongod

2. 拷贝数据目录

scp -r /var/lib/mongodb user@new_server:/var/lib/mongodb

3. 拷贝配置文件

scp /etc/mongod.conf user@new_server:/etc/

4. 新服务器设置权限

sudo chown -R mongodb:mongodb /var/lib/mongodb

5. 启动 MongoDB

sudo systemctl start mongod

优点

  • 原样复制

缺点

  • 版本不一致可能启动失败
  • 文件损坏风险

三、Debian 系统迁移(整系统)

1. 导出 MongoDB 状态

dpkg -l | grep mongo

2. 新系统安装相同版本

sudo apt install mongodb-org=6.0.12

3. 迁移数据 + 配置

/var/lib/mongodb
/etc/mongod.conf

四、迁移后检查

1. 服务状态

systemctl status mongod

2. 数据完整性

mongosh
show dbs

3. 日志检查

journalctl -u mongod -f

五、常见问题

❌ 1. 启动失败:权限问题

sudo chown -R mongodb:mongodb /var/lib/mongodb

❌ 2. 版本不兼容

  • 不要直接拷贝高版本数据到低版本
  • 使用 mongodump / mongorestore

❌ 3. 端口冲突

ss -lntp | grep 27017

六、迁移方案建议

场景 推荐方式
同机器重装系统 物理迁移
跨服务器 逻辑迁移
升级大版本 逻辑迁移
数据量 < 50GB 逻辑迁移
数据量 > 100GB 物理迁移

如果你愿意,可以告诉我:

  • MongoDB 版本
  • 是否跨服务器
  • 数据量大小
  • 是否使用 Docker

我可以给你精确到命令级别的迁移方案

0