ubuntu

MongoDB在Ubuntu上的数据迁移步骤是什么

小樊
41
2025-09-03 00:26:21
栏目: 云计算

以下是在Ubuntu上进行MongoDB数据迁移的常见步骤,以mongodump/mongorestore工具为例(适用于全量或部分数据迁移):

1. 安装MongoDB工具(如未安装)

# 导入MongoDB公钥  
wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -  

# 添加MongoDB源(以Ubuntu 22.04为例)  
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list  

# 更新并安装工具  
sudo apt update  
sudo apt install -y mongodb-org-tools  

2. 备份源数据库(导出数据)

# 导出单个数据库(BSON格式,适合全量迁移)  
mongodump --uri="mongodb://源主机:27017" --db=源数据库名 --out=/path/to/backup  

# 导出单个集合(JSON格式,适合部分数据)  
mongodump --uri="mongodb://源主机:27017" --db=源数据库名 --collection=源集合名 --out=/path/to/backup  

3. 传输备份数据到目标服务器

# 使用scp传输(需目标服务器IP和路径)  
scp -r /path/to/backup user@目标主机:/path/to/destination  

4. 恢复数据到目标数据库

# 恢复整个数据库  
mongorestore --uri="mongodb://目标主机:27017" --db=目标数据库名 /path/to/destination/源数据库名  

# 恢复单个集合(需指定集合名)  
mongorestore --uri="mongodb://目标主机:27017" --db=目标数据库名 --collection=目标集合名 /path/to/backup/源数据库名/源集合名.bson  

5. 验证数据

# 连接目标数据库  
mongosh --uri="mongodb://目标主机:27017"  

# 切换数据库并查看数据  
use 目标数据库名  
db.目标集合名.find().limit(5)  # 查看前5条数据  

可选步骤:处理认证与权限

若源/目标数据库有认证,需在命令中添加--username--password--authenticationDatabase参数,例如:

mongodump --uri="mongodb://用户名:密码@源主机:27017/admin" --db=源数据库名 --out=/backup  

注意事项

以上步骤参考自官方工具使用指南及Ubuntu环境适配方案。

0
看了该问题的人还看了