在Ubuntu上备份和恢复MongoDB数据库主要使用mongodump
和mongorestore
这两个命令行工具。以下是详细的备份与恢复流程:
sudo apt update
sudo apt install -y mongodb-clients
sudo mkdir -p /backup/mongodb
mongodump
进行备份:mongodump --out /backup/mongodb/$(date +%Y%m%d%H%M%S)
mongodump --db your_database_name --out /backup/mongodb/$(date +%Y%m%d%H%M%S)
mongodump --db your_database_name --collection your_collection_name --out /backup/mongodb/$(date +%Y%m%d%H%M%S)
mongodump --db your_database_name --collection your_collection_name --query "查询条件" --out /backup/mongodb/$(date +%Y%m%d%H%M%S)
mongodump --db your_database_name --out /backup/mongodb/$(date +%Y%m%d%H%M%S) --archive .gz --gzip
sudo systemctl stop mongod
mongorestore
恢复数据:mongorestore /backup/mongodb/$(date +%Y%m%d%H%M%S)
mongorestore --db your_database_name /backup/mongodb/$(date +%Y%m%d%H%M%S)/your_database_name
mongorestore --db your_database_name --collection your_collection_name /backup/mongodb/$(date +%Y%m%d%H%M%S)/your_database_name/your_collection_name.bson
mongorestore --db your_database_name /backup/mongodb/$(date +%Y%m%d%H%M%S)/old_users
mongorestore --db your_database_name /backup/mongodb/$(date +%Y%m%d%H%M%S) --drop
sudo systemctl start mongod
mongorestore
命令来验证备份文件的完整性,或者使用mongo
shell连接到MongoDB实例,并检查数据是否已成功恢复。mongo yourDatabaseName
通过以上步骤,你可以在Ubuntu上成功备份和恢复MongoDB数据库。记得定期检查和测试你的备份,以确保在需要时可以成功恢复数据。