centos

MongoDB数据恢复在CentOS上怎么做

小樊
50
2025-10-04 22:48:28
栏目: 云计算

MongoDB数据恢复在CentOS上的操作步骤

1. 停止MongoDB服务

在进行数据恢复前,必须停止MongoDB服务,避免恢复过程中数据写入导致冲突或损坏。
执行命令:

sudo systemctl stop mongod

2. 准备备份文件

确保已拥有有效的MongoDB备份文件(常见格式为.tar.gz压缩包或.bson原始文件)。若未备份,需先通过mongodump创建备份(参考备份流程)。

3. 处理现有数据(可选但推荐)

为防止恢复过程中出现数据冲突,建议备份当前MongoDB数据目录(默认路径为/var/lib/mongo),再清空该目录。
执行命令:

# 备份当前数据(可选)
sudo cp -R /var/lib/mongo /var/lib/mongo_backup
# 清空当前数据目录
sudo rm -rf /var/lib/mongo/*

4. 根据备份格式选择恢复方式

(1)恢复.tar.gz压缩格式备份

若备份为压缩包,需先解压到MongoDB数据目录,再调整权限。
执行命令:

# 解压备份文件到根目录(根据备份路径调整)
sudo tar zxvf /path/to/your/backup/mongodump-20250930.tar.gz -C /
# 将解压后的数据移动到MongoDB标准数据目录
sudo mv /data/db /var/lib/mongo
# 更改数据目录权限(确保mongod用户可访问)
sudo chown -R mongod:mongod /var/lib/mongo
(2)恢复.bson格式备份

若备份为.bson文件,需使用mongorestore工具直接恢复。

5. 启动MongoDB服务

恢复完成后,启动MongoDB服务并检查状态。
执行命令:

# 启动服务
sudo systemctl start mongod
# 检查服务状态(确保为“active (running)”)
sudo systemctl status mongod

6. 验证数据恢复

通过MongoDB Shell登录实例,检查数据是否恢复成功。
执行命令:

# 登录Shell
mongo -u admin -p 123456 --authenticationDatabase admin
# 切换到目标数据库
use mydatabase
# 查看集合列表
show collections
# 查询集合中的数据(如mycollection)
db.mycollection.find().pretty()

注意事项

0
看了该问题的人还看了